Queue ဆိုသည်မှာပထမ ဦး ဆုံးအနေဖြင့်ပထမ ဦး ဆုံးထွက်ပေါ်လာသော (FIFO) ဒေတာဖွဲ့စည်းပုံသည်အဖွဲ့၏အဆုံးမှာပယ်ဖျက်မည့်ဒြပ်စင်များအဆုံးတွင်ထည့်သွင်းခွင့်ပြုသည် ကွင်းဆက်တန်းစီသည်တန်းစီ၏အရွယ်အစားကိုပြောင်းလဲနိုင်သော linked list မှတစ်ဆင့်အကောင်အထည်ဖော်သည့်တန်းစီဖွဲ့စည်းပုံဖြစ်သည်။ ကွင်းဆက်တန်းစီများကိုပထမ ဦး ဆုံးအနေဖြင့်ပထမ ဦး ဆုံး - ပထမ ဦး ဆုံးထွက်ပေါ်လာသောအင်္ဂါရပ်များလိုအပ်သောအခြေအနေများစွာတွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသည်။
ချိတ်ဆက်ထားသောစာရင်းတန်းစီသည် Linked List ဖွဲ့စည်းပုံကို အသုံးပြု. အကောင်အထည်ဖော်သည်။ Linked Link Node တွင်အပိုင်းနှစ်ပိုင်းပါ 0 င်သည်။ ဒေတာဒိုမိန်းနှင့်ညွှန်ပြသည့်ဒိုမိန်းဖြစ်သည်။ Pointer Field သည်နောက်ဆက်တွဲ list node ကိုညွှန်ပြသည်။ တန်းစီတစ်ခု၏အကောင်အထည်ဖော်မှုသည်ခေါင်းနှင့်အမြီးထောက်လှမ်းရေးပေါ်တွင်မူတည်သည်။
ချိတ်ဆက်ထားသော list node တစ်ခုသည်အပိုင်းနှစ်ပိုင်းခွဲထားသည်။ ဒေတာဒိုမိန်းတစ်ခုနှင့် pointer domain တစ်ခုနှင့် pointer domain ကိုနောက် node ကိုညွှန်ပြသည့်နေရာဖြစ်သည်။ LPP အတွက် PHP အတွက် code မှာချိတ်ဆက်ထားသောစာရင်း node များကိုအကောင်အထည်ဖော်ရန်ကုဒ်ဖြစ်သည်။
class Node {
public $data;
public $next;
}
အဆိုပါတန်းစီအဓိပ္ပာယ်ကောက်ယူနှစ်ခုထောက်ပြနှစ်ခုပါဝင်သည်: ဦး ခေါင်းနှင့်အဖွဲ့၏အမြီး။ အမြီး Pointer သည်နောက်ဆုံးပေါ်ဒြပ်စင်ကိုအမှတ်အသားပြုရန်နှင့် ဦး ခေါင်းအမှတ်အသားကိုပထမ ဦး ဆုံး element ကိုညွှန်ပြသည်။ တန်းစီ၏အရှည်သည်ဒြပ်စင်များအပြင်ပိုမိုတိုးပွားလာသည်။ အောက်ဖော်ပြပါ PHP ရှိတန်းစီကိုအကောင်အထည်ဖော်ရန်အတွက်အောက်ပါအတိုင်းဖြစ်သည်။
class Queue {
private $head;
private $tail;
public function __construct() {
$this->head = null;
$this->tail = null;
}
public function isEmpty() {
return $this->head === null;
}
public function enqueue($data) {
$newNode = new Node();
$newNode->data = $data;
$newNode->next = null;
if ($this->isEmpty()) {
$this->head = $this->tail = $newNode;
} else {
$this->tail->next = $newNode;
$this->tail = $newNode;
}
}
public function dequeue() {
if ($this->isEmpty()) {
return null;
}
$data = $this->head->data;
$this->head = $this->head->next;
if ($this->head === null) {
$this->tail = null;
}
return $data;
}
}
ချိတ်ဆက်ထားသောစာရင်းများကိုအောက်ပါအခြေအနေများတွင်မကြာခဏအသုံးပြုလေ့ရှိသည်။
Linked List Queue များသည်ပထမ ဦး ဆုံး - ပထမ ဦး ဆုံးထွက်ပေါက် (FIFO) ဒေတာတည်ဆောက်ပုံများကိုအကောင်အထည်ဖော်ရန်အသုံးများသောနည်းလမ်းများဖြစ်ပြီးအလုပ်များကို sequence တွင်လုပ်ငန်းများ၌ပြုလုပ်ရန်လိုအပ်သည့်အခြေအနေများစွာအတွက်သင့်တော်သည်။ ချိတ်ဆက်ထားသောစာရင်းများ၏ပြောင်းလွယ်ပြင်လွယ်မှုဖြင့်စီသောတန်းစီများသည်လျှောက်လွှာအမျိုးမျိုးကိုဖြည့်ဆည်းရန်ရိုးရှင်းစွာတိုးချဲ့နိုင်ပါသည်။ ချိတ်ဆက်ထားသောစာရင်းတန်းစီများကိုအကောင်အထည်ဖော်ခြင်းသည်ရိုးရှင်းလွယ်ကူပြီးအကျိုးရှိရှိသာမကပရိုဂရမ်းမင်းတွင်မရှိမဖြစ်လိုအပ်သောကိရိယာတစ်ခုဖြစ်သည်။