循環ポインターとテールポインターのいずれかを使用して二重リンクリストを作成することの利点/欠点は何ですか? deque を構築するのに適しているのはどれですか?
私の意見では、ノードの検索、挿入、および削除のすべてを行う点で、それらはほとんど同じです。唯一の違いは、テール ポインター二重リンク リストの場合、テール ポインターが最後のノードを指す必要があり、テールの後に新しいノードを挿入するたびに更新する必要があることです。さらに、循環リンクリストでは、最後のノードにリンクされた最初のノードがあり、その逆も同様ですが、テールポインターでは、head-> prev と tail-> の両方がヌルポインターを指しています。どちらも両端キューを構築するのに最適だと思います。すべては、プログラムをどのように実行したいかによって決まります。プログラムをヘッド ノードとテール ノードの間で高速に実行できるようにする場合は、循環アプローチを使用します。それ以外の場合は、テール ポインターで十分です。
それが私の質問への答えです。循環二重リンク リストをまだ作成していないため、マシン上でどのように動作するかについては経験がありませんが、テール ポインターと同じくらい高速になると思います。何か提案はありますか?そして、ご意見をお寄せいただきありがとうございます。