merge sort手動輸入資料版

2021-08-21 11:15:10 字數 1051 閱讀 6727

做了乙個自己手動輸入資料的,中間加了些防錯過程

#merge sort程式設計,自己輸入版

def merge(arr, l, p, r):

left = arr[l:p+1]

print(left) #觀察過程變化

right = arr[p+1:r+1] #使用:時不包括右端點

print(right)

i=0j=0

k=lwhile i < len(left) and j if left[i] < right[j]:

arr[k] = left[i]

i = i+1

else:

arr[k] = right[j]

j = j+1

k = k+1

while i < len(left):

arr[k] = left[i]

i = i+1

k = k+1

while j < len(right):

arr[k] = right[j]

j = j+1

k = k+1

def merge_sort(arr, l, r):

if l < r:

p=int((l+r)/2)

merge_sort(arr, l, p) #持續分離左半部分

merge_sort(arr, p+1, r) #持續分離右半部分

merge(arr, l, p, r) #l, p, r分別對應的是左中右

print(arr) #觀察過程變化

print("請輸入陣列,空格隔開,enter結束")

list = input().split(" ") #輸入陣列

while '' in list: #刪除多餘的空元素

list.remove('')

list = [float(x) for x in list] #把字串轉化為數字

merge_sort(list, 0, len(list)-1)

print("排序後\n")

print(list)

工資類(陣列) 手動輸入

工資類 1 salary.h ifndef salary include define salary include class salary endif 2 salary,cpp include include salary.h using namespace std void salary se...

手動輸入驗證碼

總結 因為一些驗證碼使用ocr識別效率比較低,所以就是有時候需要使用手動輸入驗證碼,那麼首先就是需要在網頁上找到驗證碼的鏈結,很多時候驗證碼的鏈結是後面有個時間戳的失效時間的,例如 code url version後面就是經過時間戳得到的,所以就是如果不是根據這個時間戳來獲取,會有乙個過期或者叫做失...

蛇形陣列,手動輸入與自動安排資料

第一次寫部落格,先來個蛇形陣列,量其實只有一半,我寫了手動輸入資料和自動安排資料兩種情況,其實本質是一樣的,幾乎是複製貼上後進行很小的改動。我的思路主要是 蛇 要繞圈,繞完外圈繞內圈,就成了乙個for迴圈,繞圈要分四步進行,找出其中的規律後進行編寫。歡迎大佬給我提出意見指正或給出更簡單的方法。inc...