Linked Lists
Linked Lists
Section titled “Linked Lists”Array နဲ့ မတူတာက Linked List က Memory မှာ တစ်ဆက်တည်း ရှိမနေပါဘူး။ နေရာအနှံ့ ကြဲဖြန့်နေနိုင်တယ်။ တစ်ခုနဲ့ တစ်ခု Link (ချိတ်ဆက်မှု) လေးတွေနဲ့ ဆွဲထားကြတာပါ။
Visual Analogy: A Scavenger Hunt
Section titled “Visual Analogy: A Scavenger Hunt”Array က စာအုပ်စင်တစ်ခုလို တစ်စုတစ်စည်းတည်း ရှိတယ်။ Linked List ကတော့ “ရတနာသိုက်ရှာပုံတော်” (Scavenger Hunt) နဲ့ တူပါတယ်။
- ပထမ သဲလွန်စကို တွေ့မယ်။
- အဲဒီ သဲလွန်စက ဒုတိယ နေရာကို ညွှန်ပြမယ်။
- ဒုတိယ နေရာရောက်မှ တတိယ နေရာကို သိမယ်။
Singly vs. Doubly Linked Lists
Section titled “Singly vs. Doubly Linked Lists”- Singly Linked List:
- ရှေ့ကိုပဲ သွားလို့ရမယ်။ (Head -> Next -> Next -> Null)
- နောက်ပြန် လှည့်လို့မရဘူး။
- Doubly Linked List:
- ရှေ့ရော နောက်ရော သွားလို့ရမယ်။ (
Prev -> Node -> Nextကို နှစ်ဖက်လုံး ပြန်သွားလို့ရတဲ့ သဘော) - Memory ပိုစားမယ် (Pointer နှစ်ခု မှတ်ရလို့)။
- ရှေ့ရော နောက်ရော သွားလို့ရမယ်။ (
Project: Music Playlist
Section titled “Project: Music Playlist”သီချင်း Playlist တစ်ခု တည်ဆောက်မယ်ဆိုပါစို့။
- Playing Now: လက်ရှိ Node
- Next/Skip:
NextPointer ကို သွားမယ်။ - Previous:
PrevPointer ကို သွားမယ်။ - Add Song: ကြိုက်တဲ့နေရာမှာ ကြားဖြတ်ထည့်ဖို့ Array ထက် ပိုလွယ်တယ်။ Pointer လေး ပြောင်းချိတ်လိုက်ရုံပဲ။