基础算法的Python实现

来源:互联网 发布:一键安装nginx 编辑:程序博客网 时间:2024/05/29 16:20

一、排序


1、冒泡排序:

list=[2, 1, 3, 5, 10, 6, 4, 8, 7]def bubble_sort(list):    length = len(list)    while length>1:        for i in range(length-1):            if list[i]>list[i+1]:                temp=list[i]                list[i]=list[i+1]                list[i+1]=temp        length=length-1    return list

2、插入排序:(原理就是将数组分为三部分,[有顺序的数组][等待插入的元素][尚未插入的元素] ——将等待插入的元素插入第一部分,并排序,视作新的数组

def insert_sort(list):    length=len(list)    for i in range(0, length-1):        key = list[i+1]        while i >= 0:            if list[i] > key:                list[i+1] = list[i]                list[i] = key            i -= 1     return list

3、直接选择排序:
固定第一位,其余的依次与之比较:

def select_sort(list):    list=[2, 1, 3, 5, 10, 6, 4, 8, 7]    for i in range(length-1):        for j in range(i+1, length):            if list[i]>list[j]:                list[i],list[j]=list[j],list[i]    return list
0 0
原创粉丝点击