冒泡排序
data = [32,25,95,68,12,73,65]
for i in range(len(data)-1):
for j in range(len(data)-i-1):
if data[j]>data[j+1]:
data[j],data[j+1] = data[j+1],data[j]
print(data)
选择排序
data = [32,25,95,68,12,73,65,65]
for i in range(0,len(data)-1):
min = i
for j in range(i+1,len(data)):
if data[j] < data[min]:
min = j
if min!= i:
data[i], data[min] = data[min], data[i]
print(data)
二分查找
def erfen(list,item):
if len(list) == 0:
return False
else:
mid = len(list) // 2
if list[mid] == item:
return True
else:
if item < list[mid]:
return erfen(list[:mid],item)
else:
return erfen(list[mid + 1:],item)
data = [1,2,3,4,5,6,7]
print(erfen(data,3))
斐波那契数列生成器
def Feb(n):
a = 1
b = 1
for i in range(n):
yield a
a, b = b, a + b
f = Feb(10)
print(list(f))
这篇博客介绍了三种常见的排序算法:冒泡排序、选择排序和斐波那契数列生成器。冒泡排序通过不断交换相邻元素实现排序,选择排序则寻找最小元素并放到正确位置。二分查找是一种高效的查找算法,适用于已排序的列表。此外,还展示了如何生成斐波那契数列的生成器函数。这些基础知识对于理解和优化算法效率至关重要。
34万+

被折叠的 条评论
为什么被折叠?



