Python などの言語で自己参照リストを作成できることはわかっています。
>>> my_list = [1,2]
>>> my_list.append(my_list)
>>> print my_list
[1,2,[...]]
>>> print my_list[0]
1
>>> print my_list[2]
[1,2,[...]]
自己参照リストから恩恵を受けるアルゴリズムは? 一つも思いつきません。
ありがとう。
Python などの言語で自己参照リストを作成できることはわかっています。
>>> my_list = [1,2]
>>> my_list.append(my_list)
>>> print my_list
[1,2,[...]]
>>> print my_list[0]
1
>>> print my_list[2]
[1,2,[...]]
自己参照リストから恩恵を受けるアルゴリズムは? 一つも思いつきません。
ありがとう。
データ構造を使用してグラフを表現する場合、自己参照リスト、および一般的に言えば循環データ構造が発生する可能性があります。
たとえば、この単純なグラフの表現を考えてみましょう。各ノードは、原子値、またはリンク先のノードのリストです。円によって、リストに、そのリストを含む別のリストが含まれる場合があります。自己円、つまりノードからそれ自体へのエッジは、自己参照リストを引き起こします。
リストについてのみ質問している場合は、リストとしてモデル化されたデータ構造を再帰的に作成/検索することを除いて、今は何も考えられません。
しかし、自己参照の 1 つのアプリケーションは、Python でのこの自己参照クラス定義である可能性があります。
ほとんどの再帰的な問題定義は、ある種の自己参照オブジェクトまたは自己参照定義を持つデータを使用します。
ウィキペディアのリンクを追加すると、適切な情報が得られます。
SOのその他