ホームページ >バックエンド開発 >Python チュートリアル >バブル ソートを記述する 2 つの方法は何ですか? バブル ソートを使用して 10 個の数字を並べます。

バブル ソートを記述する 2 つの方法は何ですか? バブル ソートを使用して 10 個の数字を並べます。

Tomorin
Tomorinオリジナル
2018-08-17 14:46:235342ブラウズ

#バブルソートを使用して、毎回隣接する2つのデータを比較し、大きいデータを最後に置くことができます。これにより、最初のパスの後、最大の数が実行されます。次の並べ替えでは最後の数値と比較する必要はなく、最後から 2 番目に大きい数値が最後から 2 番目になります... したがって、2 つの関数を使用でき、1 つは数値の制御に使用されます。各比較の要素の数、交換用に 1 つ:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 if __name__ == "__main__":    N = 10
    # input data
    print '请输入10个数字:\n'
    l = []
    for i in range(N):        
          l.append(int(raw_input('输入一个数字:\n')))
    print
    for i in range(N):        
          print l[i]
    print
 
    # 排列10个数字
    for i in range(N - 1):
           min = i
        for j in range(i + 1,N):        
             if l[min] > l[j]:min = j
        l[i],l[min] = l[min],l[i]
    print '排列之后:'
    for i in range(N):   
        print l[i]

上記の例の出力結果は次のとおりです:

请输入10个数字:
输入一个数字:5
输入一个数字:3
输入一个数字:23
输入一个数字:67
输入一个数字:2
输入一个数字:56
输入一个数字:45
输入一个数字:98
输入一个数字:239
输入一个数字:9
5
3
23
67
2
56
45
98
239
9

排列之后:
2
3
5
9
23
45
56
67
98
239


以上がバブル ソートを記述する 2 つの方法は何ですか? バブル ソートを使用して 10 個の数字を並べます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。