Up 「バブルソート」 プログラム 作成: 2026-09-04
更新: 2026-09-08

4足歩行ロボット > 自律型> コンピュータ > ソフトウェア > Python > 「バブルソート」 プログラム

    Python の 「バブルソートプログラム」 は,普通はつぎのようなコードが書かれる: DATA = [2, 5, 6, 3, 4, 1] for i in range(len(DATA)-1): for j in range(len(DATA)-1, i, -1): if(DATA[j] < DATA[j-1]): tmp = DATA[j] DATA[j] = DATA[j-1] DATA[j-1] = tmp print(DATA)
    しかしこれは,「オブジェクト指向」 とは無関係。
    「オブジェクト指向」 だと,
      <class BubbleSort の物を自動させる>
       を以て,DATA をバブルソートする
    というようになる。

    これは,以下のようになる:
    # 類の設定 class BubbleSort:   def __init__(self, data):    self.data = data   # main() の DATA が,変数 data に代入され,   # そして self.data で,物の属性になる   # 物の振る舞い (メソッド)   def sort(self):    n = len(self.data)    for i in range(n - 1):    for j in range(n - 1, i, -1):    if self.data[j] < self.data[j - 1]:    self.data[j], self.data[j - 1]    = self.data[j - 1], self.data[j]   def result(self):    return self.data def main():   DATA = [2, 5, 6, 3, 4, 1]   # 類 BubbleSort の物 sorter 物を作る   sorter = BubbleSort(DATA)   # 物を自走させる   sorter.sort()   # 出力   print(sorter.result()) if __name__ == '__main__':   main()