V tomto příkladu se naučíte psát program JavaScript, který bude implementovat frontu.
Abyste pochopili tento příklad, měli byste znát následující programovací témata JavaScriptu:
- JavaScript pole push ()
- Posun pole JavaScriptu ()
- Metody JavaScript a toto klíčové slovo
Fronta je datová struktura, která se řídí zásadou First In First Out (FIFO) . Nejprve se přistupuje k prvku, který je přidán jako první. Je to jako být ve frontě, abyste získali lístek do kina. První dostane lístek jako první.
Příklad: Implementace fronty
// program to implement queue data structure class Queue ( constructor() ( this.items = (); ) // add element to the queue enqueue(element) ( return this.items.push(element); ) // remove element from the queue dequeue() ( if(this.items.length> 0) ( return this.items.shift(); ) ) // view the last element peek() ( return this.items(this.items.length - 1); ) // check if the queue is empty isEmpty()( return this.items.length == 0; ) // the size of the queue size()( return this.items.length; ) // empty the queue clear()( this.items = (); ) ) let queue = new Queue(); queue.enqueue(1); queue.enqueue(2); queue.enqueue(4); queue.enqueue(8); console.log(queue.items); queue.dequeue(); console.log(queue.items); console.log(queue.peek()); console.log(queue.isEmpty()); console.log(queue.size()); queue.clear(); console.log(queue.items);
Výstup
(1, 2, 4, 8) (2, 4, 8) 8 nepravdivých 3 ()
Ve výše uvedeném programu je Queue
třída vytvořena za účelem implementace datové struktury fronty. Třída zahrnuje metody, jako je enqueue()
, dequeue()
, peek()
, isEmpty()
, size()
, a clear()
.
Queue
Objekt je vytvořen pomocí new
operátora a různé metody jsou přístupné prostřednictvím objektu.
- Zpočátku
this.items
je prázdné pole. push()
Způsobu se přidá takové prvek do this.items.shift()
Metoda odstraní první prvek z this.items.length
Vlastnost udává délku this.items.