バブルソート、再帰的なバイナリ検索、バイナリ検索


#冒泡排序
LIST1 = [ 2456789113035384142 ] DEF bubble_sort(リスト) のための I における範囲(LEN(リスト) - 1 のための J における範囲(LEN(リスト) - 1 - I): もしリスト[J]>リスト[J + 1 ]: リスト[J]、リスト[J + 1 ] =リスト[J +1 ]、リスト[J] プリント(リスト) LIST1 = [ 24556783895113035384142 ] bubble_sort(LIST1)
#再帰バイナリサーチ
のList1 = [ 245678911303538であり41は42である] 
DEF erzcf(開始、停止、項目、リスト1):
    MID =(スタートSTOP +)// 2 
    のIFスタート]> [ STOP:
         リターン - 。1 
    のIF項目== のList1 [MID]:
         返すMID 
    ELIF項目を > List1を[MID]:
         リターンerzcf(ミッド+ 1 、停止、アイテム、リスト1)
     戻り erzcf(開始、ミッド1 、アイテム、リスト1)

印刷(erzcf(0、LEN(リスト1) - 130、リスト1))

#二分法
LIST1 = [2,4,5,6,7,8,9,11,30,35,38,41,42] DEF erfengfa(開始、終了、アイテム、LIST1): 開始<=終了中: ミッド= 2 //(+始端) 項目場合== LIST1 [中間]: 中間戻り > LIST1 [中間] ELIF項目を: 開始=ミッド+ 1 他: 端=半ば1 リターン-1 プリント(erfengfa(0、 LEN(リスト1)-1,30、リスト1))

  

おすすめ

転載: www.cnblogs.com/wutanghua/p/11105090.html