最新要換工作了,馬上要離開上海了,終究還是過客啊,希望能在新城市找到乙個好的公司,主要就是乙個冒泡和快排,在python的**如下。
描述 它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。
**實現
def bubble_sort(list):
for i in range(0, len(list) - 1): # 記錄冒泡的次數
for j in range(0, len(list)-1-i): # 記錄每輪氣泡排序比較的次數
if list[j] > list[j + 1]:
list[j + 1], list[j] = list[j], list[j+ 1]
j = j + 1
else:
continue
return list
快速排序:
def quick_sort(lists, left, right):
# 快速排序
if left >= right:
return lists
key = lists[left]
low = left
high = right
while left < right:
while left < right and lists[right] >= key:
right -= 1
lists[left] = lists[right]
while left < right and lists[left] <= key:
left += 1
lists[right] = lists[left]
lists[right] = key
quick_sort(lists, low, left - 1)
quick_sort(lists, left + 1, high)
return lists
雜食向 看看看看看著你
1 vue cli3 vue typescript 主要學習構建思路,包括node指令碼初級寫法 2 css逐幀動畫 3 vuex原理及state 1 摩洛哥 旅行 攝影 城市配色 2 紐約 曼哈頓,huawei p30 pro 攝影 城市 色調 鏡頭 3 素士吹風機 色彩搭配 創意 攝影 ps 4...
演算法 怒刷5大經典排序演算法之後,看看我發現了什麼
選擇排序 selectionsort 插入排序 insertionsort 歸併排序 mergesort 快速排序 quicksort 總結掌握常見的排序演算法能夠讓我們更好的理解迴圈不變數,還有減而知之,分而治之的思想,更好的寫出遞迴 當我們需要對資料進行二次或以上排序時,穩定性這個特性才會有意義...
演算法學習 看看深度優先搜尋演算法
先看一題 給定整數a1,a2,a3 an,判斷是否可以從中選出若干數,使他們的和恰好為k。那麼,現在分析一下問題的需求。只需從a1開始按順序決定每個數加或者不加,在管不n個數都決定後在判斷他們的和是否為k即可。換乙個方式想,從某個狀態開始不斷的轉移狀態直到無法轉移,然後然後回退到前一步的狀態,繼續轉...