# -*- coding:utf-8 -*- def bubule_sort(input_list): if not input_list: return elif len(input_list) == 1: return input_list else: #从第1个开始,倒数第一个结束,一共是N-1次循环,每次循环swap都要将当前最大值放到最后 for i in range(len(input_list)-1): for j in range(len(input_list)-1): if input_list[j] > input_list[j+1]: # swap(input_list[j],input_list[j+1]) tmp = input_list[j] input_list[j] = input_list[j + 1] input_list[j + 1] = tmp return input_list input_list = [1,7,5,4,2,5] print bubule_sort(input_list)