配列と連結リスト 結局、データ構造の違い。慣れの問題か。。。

20230709配列 待ち行列 連結リスト 結局データ構造


データ構造素人です。
自分用メモです。


「ラディックスソート(基数ソート)」で、並び替えをするのに、(何でもいいけど)
・配列
・連結リスト
(・待ち行列(キュー・先入れ先出し))
などの方法で処理できるらしい。ふーん。

 


で、いつもひっかかる「連結リスト」。
エクセルばかり使っているので、配列は分かるが、連結リストが分からなくなる。

連結リストは、単方向なら、(次のアドレスを指す)ポインターを1個持てばいいいが、
それって、「2次元配列でいいのでは?」と思ってしまう。


というか、連結リストで、「ポインターを持つ」って、
「面倒でない?」
「見にくくない?」
「分かりにくくない?」
とか思ってしまう。


馬鹿な考えで行くと、
連結リストの「データは、
ほにゃららというアドレス」に置かれるけど、
ポインターはどこに置かれるの?」
とか。

まあ、それは「データ構造」の違いであって、
連結リストには、追加がしやすかったり・・・、
配列と連結リストには一長一短があって・・・とかいう話になるのか。
(よく分かっていない)汗

 

じゃあ、連結リスト←→配列」って入れ替えできないのとか・・・
いろんな疑問が出てくる。

 

素人ですみません。

 

自分用メモ。追記。
ラディックスソートだからかな、(いろんなやり方があるだろうけど)
ポインターで分かりにくいのが、
リストのポインターで、次のポインターを指すもの(数字入っているもの)と入っていないもの(-1とか)があり、
普通は、始めのポインターで追っていくが、同じ分類に追加があった場合、上記のリストポインター(追加ポインター)を使って回している。
(この例だとリスト自体とポインターのリスト、さらに始めのポインターを持っているようです。)
いろんなやり方があるのだろう・・・。