wordpress建立个人网站,网页设计首页,在上海注册公司有什么好处,微信公众平台开发Python有内置的max函数可以取最大值#xff1a;
max([2,3,9,1,0])也可以使用sorted先排序#xff0c;再索引取出最大值#xff1a;
sorted([2,3,9,1,0])[-1]如果不用内置函数#xff0c;自己排序算法来找出最大值#xff0c;也有很多选择。
比如冒泡排序、循环排序、交…Python有内置的max函数可以取最大值
max([2,3,9,1,0])也可以使用sorted先排序再索引取出最大值
sorted([2,3,9,1,0])[-1]如果不用内置函数自己排序算法来找出最大值也有很多选择。
比如冒泡排序、循环排序、交换排序、插入排序、选择排序等等。
1、冒泡排序
是一种简单的排序算法。它重复地走访过要排序的数列一次比较两个元素如果它们的顺序错误就把它们交换过来。
def bubble_sort(arr, simulationFalse):def swap(i, j):arr[i], arr[j] arr[j], arr[i]n len(arr)swapped Trueiteration 0if simulation:print(iteration,iteration,:,*arr)x -1while swapped:swapped Falsex x 1for i in range(1, n-x):if arr[i - 1] arr[i]:swap(i - 1, i)swapped Trueif simulation:iteration iteration 1print(iteration,iteration,:,*arr)return arr
print(bubble_sort([2,4,5,1]))2.循环排序
def cycle_sort(arr):len_arr len(arr)for cur in range(len_arr - 1):item arr[cur]index curfor i in range(cur 1, len_arr):if arr[i] item:index 1if index cur:continuewhile item arr[index]:index 1arr[index], item item, arr[index]while index ! cur:index curfor i in range(cur 1, len_arr):if arr[i] item:index 1while item arr[index]:index 1arr[index], item item, arr[index]return arr
print(cycle_sort([2,4,5,1]))3、交换排序
def exchange_sort(arr):arr_len len(arr)for i in range(arr_len-1):for j in range(i1, arr_len):if(arr[i] arr[j]):arr[i], arr[j] arr[j], arr[i]return arr
print(exchange_sort([2,4,5,1]))4、插入排序
def insertion_sort(arr, simulationFalse):iteration 0if simulation:print(iteration,iteration,:,*arr)for i in range(len(arr)):cursor arr[i]pos iwhile pos 0 and arr[pos - 1] cursor:# Swap the number down the listarr[pos] arr[pos - 1]pos pos - 1arr[pos] cursorif simulation:iteration iteration 1print(iteration,iteration,:,*arr)return arr
print(insertion_sort([2,4,5,1]))5、选择排序
def selection_sort(arr, simulationFalse):iteration 0if simulation:print(iteration,iteration,:,*arr) for i in range(len(arr)):minimum ifor j in range(i 1, len(arr)):# Select the correct valueif arr[j] arr[minimum]:minimum jarr[minimum], arr[i] arr[i], arr[minimum]if simulation:iteration iteration 1print(iteration,iteration,:,*arr)return arrprint(selection_sort([2,4,5,1]))通过排序算法得到顺序列表后通过索引就可以得到最大值so easy