首页 > 编程语言 > 详细

算法基础

时间:2018-08-05 00:16:01      阅读:326      评论:0      收藏:0      [点我收藏+]

一 。  什么是算法?

   算法就是用系统的方法描述解决问题的策略机制,简单的来讲就是一个计算的过程,解决问题的方法。

 

二 。 算法的基本概念:

  (1)时间复杂度:  可以理解为用来评估算法运行效率的一个单位

 技术分享图片

        技术分享图片

   (2)常见的时间复杂度(按效率排序)

      技术分享图片

     (3)空间复杂度

           技术分享图片

           技术分享图片

              有时候为了提高效率 会采用空间换取时间的做法

三 .基础的算法

 (1)递归版的二分查找

 

def bin_search_rec(data_set, value, low, high):
       if low <= high:
        mid = (low + high) // 2
        if data_set[mid] == value:
            return mid
        elif data_set[mid] > value:
            return bin_search_rec(data_set, value, low, mid - 1)
        else:
            return bin_search_rec(data_set, value, mid + 1, high)
      else:
         return
            

 

  (2) 冒牌算法优化版

   

def bubble_sort_1(li):
    for i in range(len(li)-1):
        exchange = False
        for j in range(len(li)-i-1):
            if li[j] > li[j+1]:
                li[j], li[j+1] = li[j+1], li[j]
                exchange = True
        if not exchange:
            return

 

    

 

算法基础

原文:https://www.cnblogs.com/xuerh/p/9420580.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!