+30
| const Queue = require("./like-queue"); | ||
| const queue = new Queue(); | ||
| console.log(queue.getElements()); | ||
| queue.enqueue(1); | ||
| queue.enqueue({ therr: 3 }); | ||
| queue.enqueue(1); | ||
| queue.enqueue({ therr: 3 }); | ||
| queue.enqueue(1); | ||
| queue.enqueue({ therr: 3 }); | ||
| queue.enqueue(1); | ||
| queue.enqueue({ therr: 3 }); | ||
| queue.enqueue(1); | ||
| queue.enqueue({ therr: 3 }); | ||
| console.log(queue.length); | ||
| console.log(queue.getElements()); | ||
| console.log(queue.pop()); | ||
| console.log(queue.length); | ||
| console.log(queue.getElements()); | ||
| console.log(queue.dequeue()); | ||
| console.log(queue.dequeue()); | ||
| console.log(queue.dequeue()); | ||
| console.log(queue.dequeue()); | ||
| console.log(queue.dequeue()); | ||
| console.log(queue.dequeue()); | ||
| console.log(queue.length); | ||
| console.log(queue.getElements()); |
+11
-0
@@ -13,2 +13,6 @@ "use strict"; | ||
| getElements() { | ||
| return this.#queue.slice(this.#idx); | ||
| } | ||
| enqueue(el) { | ||
@@ -25,2 +29,9 @@ this.#queue.push(el); | ||
| } | ||
| pop() { | ||
| this.length--; | ||
| return this.#queue.pop(); | ||
| } | ||
| } | ||
| module.exports = LikeQueue; |
+1
-1
| { | ||
| "name": "like-queue", | ||
| "version": "0.1.0", | ||
| "version": "0.2.0", | ||
| "description": "Stack 구조의 Array를 이용하는 Queue로서 속도가 Stack과 동일하게 동작하는 특징이 있다.", | ||
@@ -5,0 +5,0 @@ "main": "like-queue.js", |
+27
-4
| # like-queue | ||
|  | ||
|  | ||
|  | ||
@@ -36,8 +36,9 @@ | ||
| queue.length; // 3 | ||
| queue.getElements(); // [1, "two", { three: 3 }] | ||
| queue.dequeue(); // 1 | ||
| queue.dequeue(); // "two" | ||
| queue.dequeue(); // { three: 3 } | ||
| queue.length; // 0 | ||
| queue.length; // 1 | ||
| queue.getElements(); // [{ three: 3 }] | ||
@@ -52,2 +53,3 @@ ``` | ||
| * <a href="#dequeue"><code>queue#<b>dequeue()</b></code></a> | ||
| * <a href="#getElements"><code>queue#<b>getElements()</b></code></a> | ||
@@ -96,3 +98,24 @@ ------------------------------------------------------- | ||
| ------------------------------------------------------- | ||
| <a name="pop"></a> | ||
| ### queue.pop() | ||
| 큐에 원소(`element`)를 **삭제** 할 수 있습니다. | ||
| 마지막 원소(`element`)를 **반환** 합니다. | ||
| ```js | ||
| queue.pop(); // last index's element | ||
| ``` | ||
| ------------------------------------------------------- | ||
| <a name="getElements"></a> | ||
| ### queue.getElements() | ||
| 큐의 모든 원소들(`elements`)을 **반환** 합니다. | ||
| ```js | ||
| queue.getElements(); // all elements | ||
| ``` | ||
| ## License | ||
@@ -107,2 +130,2 @@ | ||
| * [blog](https://blog.naver.com/dnfla420) | ||
| * [youtube](https://www.youtube.com/channel/UCS0F25vig_sPIQXMiK8IdSg) | ||
| * [youtube](https://www.youtube.com/channel/UCS0F25vig_sPIQXMiK8IdSg) |
5885
33.75%5
25%54
170%128
23.08%