Exercise 函式應用於排序

2022-08-03 05:42:15 字數 857 閱讀 4195

exercise1: 用函式實現氣泡排序

def payxu(list):

for i in range(1,len (list)):

for j in range(0,len(list)-i):

if list[j]>list[j+1]:

tmp=list[j]

list[j]=list[j+1]

list[j+1]=tmp

return list

list =[5,6,9,10,7,7]

print payxu(list)

issue 1:為何用range去遍歷list長度時不能從0開始?

exercise2:用函式實現快速排序(遞迴)

total =[5,6,9,10,7,7,50,76]

print payxu(total)

issue1:起始迴圈時應做乙個空值判斷,不然當執行至total 時,迴圈會超出索引範圍,當total=1時,也無需執行迴圈語句,直接返回total值即可,故加了

if len(total)<=1:

return total

若去掉這一部分,會報indexerror: list index out of range

issue 2:

不同的迴圈條件所定義的i值表示的含義不同:

#for i in range(1, len(total)) 這時i是索引

#for i in total 這時i是total裡面的元素而不是索引

今天結束了函式的學習,晚上回去完成此2個練習,並貼上練習成果。

bitmap應用於排序

這種方法只適合 資料不重複,已知資料範圍 的情況來自於 程式設計珠璣 所謂的bit map就是用乙個bit位來標記某個元素對應的value,而key即是該元素。由於採用了bit為單位來儲存資料,因此在 儲存空間方面,可以大大節省。如果說了這麼多還沒明白什麼是bit map,那麼我們來看乙個具體的例子...

python應用於網路 python應用於網路通訊

專案需要用到採用python實現維護測試工具,測試物件是linux裝置,需要在pc端採用python獲取linux裝置相關資訊 一 採用udp獲取普通資訊 udpserver socket af inet,sock dgram udpserver.bind ip,port data,client a...

隨機函式應用於遊戲

檔名稱 okpo.cpp 作 者 王俊銳 完成日期 2016年3月23日 版 本 號 v1.0 問題描述 1 隨機產生乙個1000內的數字,要求使用者猜測這個數字。輸入乙個猜想的數字,判斷是否與產生的隨機數相等,有螢幕顯示結果。並寫出猜了幾次 2 設計乙個程式,用來實現幫助小學生進行算數運算練習,最...