如何选择最恰当的排序算法?

算法实现 算法直观图 算法实际应用场景 例子比较

正文

冒泡

def bubble(List):
    for j in range(len(List)-1,0,-1):
        flag = True
        for i in range(0, j):
            if List[i] > List[i+1]:
                flag = False
                List[i], List[i+1] = List[i+1], List[i]
        if flag:
            return List
    return List

示例:

testlist = [27, 33, 28, 4, 2, 26, 13, 35, 8, 14]
print('final:', bubble(testlist))

输出: final: ([2, 4, 8, 13, 14, 26, 27, 28, 33, 35])

快排

直接插入

二分插入

希尔

直接选择

归并

算法稳定性

曹真 wechat
欢迎关注公众号:一时博客