Pythonによる実装例とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > Pythonによる実装例の意味・解説 

Pythonによる実装例

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2018/07/29 02:48 UTC 版)

バッチャー奇偶マージソート」の記事における「Pythonによる実装例」の解説

入力として、2の累乗長さ持ったリスト取りソート済みリスト返すdef compare_and_swap(x, a, b): if x[a] > x[b]: x[a], x[b] = x[b], x[a] def oddeven_merge(x, lo, hi, r): step = r * 2 if step < hi - lo: oddeven_merge(x, lo, hi, step) oddeven_merge(x, lo + r, hi, step) for i in range(lo + r, hi - r, step): compare_and_swap(x, i, i + r) else: compare_and_swap(x, lo, lo + r) def oddeven_merge_sort_range(x, lo, hi): """ 区間lo と hiのソートを行う。 注意: 端点 (lo と hi) は含むものとする。 """ if (hi - lo) >= 1: # ひとつ以上の要素があった場合入力を # 長さ半分前後分割し、 # その後それぞれマージソートする。 mid = lo + ((hi - lo) / 2) oddeven_merge_sort_range(x, lo, mid) oddeven_merge_sort_range(x, mid + 1, hi) oddeven_merge(x, lo, hi, 1) def oddeven_merge_sort(x): oddeven_merge_sort_range(x, 0, len(x)-1)>>> data = [2, 4, 3, 5, 6, 1, 7, 8]>>> oddeven_merge_sort(data)>>> data[1, 2, 3, 4, 5, 6, 7, 8]

※この「Pythonによる実装例」の解説は、「バッチャー奇偶マージソート」の解説の一部です。
「Pythonによる実装例」を含む「バッチャー奇偶マージソート」の記事については、「バッチャー奇偶マージソート」の概要を参照ください。

ウィキペディア小見出し辞書の「Pythonによる実装例」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Pythonによる実装例」の関連用語

Pythonによる実装例のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Pythonによる実装例のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのバッチャー奇偶マージソート (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS