Python实现斐波拉契数列和冒泡排序

一、斐波拉契数列

斐波拉契数列:从第3项开始,每一项都等于前两项之和。

  1. 递归实现
# 递归算法:递归(Recursion),在数学与计算机科学中,是指在函数的定义中使用函数自身的方法
def DiGui(n):
    # 出口
    if n == 1 or n == 2:
        return 1
    else:
        return DiGui(n - 1) + DiGui(n - 2)


print(DiGui(5))
  1. 函数实现
def DiGui(n):
    x, a, b = 1, 0, 1
    while x < n:
        a, b = b, a + b
        x += 1
    return b


print(DiGui(5))

二、冒泡排序法

冒泡排序法:每次比较两个数,如果他们顺序错误(大于或者小于),那么就把他们置换
冒泡排序就是把小的元素往前调或者把大的元素往后调。比较的是相邻的两个元素比较,交换也发生在这两个元素之间。如果两个元素相等则不交换。

seq=[0,9,8,1,556,4,785,4,15,4,4,2,5]
for i in range(len(seq)-1):   #冒泡排序进行的次数
    for j in range(len(seq)-i-1):  #比较的次数
        if seq[j] > seq[j + 1]:
            seq[j],seq[j+1]=seq[j+1],seq[j]
            
            
print(seq)

你可能感兴趣的:(Python,python,排序算法)