問題タブ [mem.-efficient-linkedlist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 「メモリ効率の高い双方向リンクリスト」はどのように機能しますか?
Data Structures and Algorithms Made Easyでは、struct
次のように指定されたメモリ効率の高いメモリ リストについて、
ではptrdiff
、前のノードと次のノードの xor が実行されます。たとえば、前のノードのアドレスは100で、次のノードのアドレスは500です。
したがって、ptrdiff のアドレスは400になります。アドレスの xor を知るだけで、どのようにして次または前のノードに移動できるのでしょうか (二重リンク リストで行うように)。
ここで何かステップがありませんか?
c - Cのメモリ効率の良い二重リンクリストとは何ですか?
C データ構造に関する本を読んでいるときに、「メモリ効率の良い双方向リンク リスト」という用語に出くわしました。メモリ効率の良い双方向リンク リストは、通常の双方向リンク リストよりも少ないメモリを使用するが、同じ仕事をするという 1 行がありました。それ以上の説明はなく、例も示されませんでした。これはジャーナルから取られたものであり、括弧内の「シンハ」であることが与えられました.
Googleで検索した後、私が最も近いのはこれでした。しかし、私は何も理解できませんでした。
誰かがCのメモリ効率の良い双方向リンクリストとは何か説明できますか? 通常の双方向リンクリストとどう違うのですか?
編集:さて、私は重大な間違いを犯しました。私が上に投稿したリンクを参照してください。記事の 2 ページ目でした。最初のページがあることに気付かず、指定されたリンクが最初のページだと思いました。記事の最初のページには実際に説明がありますが、完璧ではないと思います。メモリ効率の良いリンク リストまたは XOR リンク リストの基本概念についてのみ説明します。