No.2ベストアンサー
- 回答日時:
ポインタ操作で入れ換えするためのリスト構造だと思いますが(^^;
番兵を使わずに、なら、先頭と末尾と現在地を指すポインタを用意して、
繋がっていないところをNULLにしておいて、
先頭からバブルソートしていくのがいいかと思います。
要素数が20個程度なら、バブルソートでも速度的な問題はさほどありません。
クイックソートするには、ランダムアクセスできないリストは不利ですしね。
一応、バブルソートのアルゴリズムを簡単に。
まず、現在地を先頭にする。
現在地と次の要素と比較。
(昇順に並べ替えると仮定して)
次の要素の方が大きければ入れ換え。小さければそのまま。
現在地を次の要素にして、また、次の要素と比較、入れ換え。
現在地の次の要素が末尾ならば、末尾を現在地(末尾のひとつ手前)にして、
先頭に戻る。
入れ換えは、
0->1->2->3、現在地=1として、1と2を入れ換えるならば、
1:現在地(1)の前の要素(0)の次を、現在地の次の要素(2)にする。
2:現在地(1)の次の要素(2)の前を、現在地の前の要素(0)にする。
3:現在地(1)の前を、現在地の次の要素(2)にする。
4:現在地(1)の次の要素(2)の次の要素(3)の前を、現在地(1)にする。
5:現在地(1)の次を、現在地の前の要素(2)の次の要素(3)にする。
6:現在地(1)の前の要素(2)の次を、現在地(1)にする。
7:最後に、入れ換えしなかった場合と同じにするために、現在地を現在地の前の要素にする。
以上で入れ換えできるはず。
机上でしか試してないので、間違っていたらごめんなさい。
具体的なコードは、敢えて書きません。
参考図書は、やっぱり「Cで学ぶデータ構造とアルゴリズム」かな。。。
参考URL:http://www.amazon.co.jp/exec/obidos/ASIN/4274078 …
No.1
- 回答日時:
「メモリが節約できさえすれば速度は問わない」という条件ならば古典的なバブルソートが使えますが・・・
そうではなくて、メモリは節約したいが速度はO(n log n)にしたいという条件でしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
- Excel(エクセル) エクセルでキーリストからデータを取り出して1枚1枚印刷するには? 11 2022/06/27 09:52
- Excel(エクセル) 出勤簿の土、日、休日に色付けできない 2 2022/08/04 20:10
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
- C言語・C++・C# C言語で構造体の参照渡しができません 2 2022/12/18 21:22
- その他(プログラミング・Web制作) pythonにおける単方向リストの実装について 4 2022/07/13 12:34
- Excel(エクセル) 【Excel】指定した文字列に該当する行を重複しないようにリスト 3 2022/03/30 12:27
- Chrome(クローム) Google Cromeのブックマークのリストの複数の項目を一括して消去する方法はないのでしょうか? 1 2023/08/16 21:15
- Excel(エクセル) Excelで作成しているシート(表) 5 2023/06/15 10:20
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
smallにtext-allignが効かない
-
2個のFormを横並びにしたい
-
質問1.
-
含む含まないという概念自体の...
-
NからZへの全単射を具体的に構...
-
input type="hidden"で取得した...
-
border: noneでボタンの境界線...
-
<object>
-
CSS:overflow要素の印刷について
-
改行ほどは行かないけど、若干...
-
角丸画像の背景色を透明にした...
-
figcaption要素の中にul要素
-
CSSで改行後の行間調整
-
【ヒトの神秘】美男美女から何...
-
自然数と偶数の自然数は全単射...
-
listでもっぱら通常iteratorを
-
タイトルタグの中に使わないほ...
-
tdに対してmin-heightの定義、...
-
<div align="center">を使わず...
-
超音波で洗脳。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【ヒトの神秘】美男美女から何...
-
2個のFormを横並びにしたい
-
含む含まないという概念自体の...
-
角丸画像の背景色を透明にした...
-
smallにtext-allignが効かない
-
超音波で洗脳。
-
質問1.
-
「諸要素」とはどういう意味で...
-
改行ほどは行かないけど、若干...
-
1から100までの自然数のうち、2...
-
マージソートの計算量について-...
-
タグは大文字と小文字どちらが...
-
textareaの幅を画面と合わせたい
-
親要素・子要素
-
テキストボックスの中にリンク...
-
html タグの閉じスラッシュ前の...
-
input type="hidden"で取得した...
-
NからZへの全単射を具体的に構...
-
【CSS】imgタグを、親要素の幅...
-
HTMLページ上でiframeを最前面...
おすすめ情報