refactor: Replace poll with pop in Queue and Deque (#415)

This commit is contained in:
Yudong Jin
2023-03-13 21:58:21 +08:00
committed by GitHub
parent 2d17ee8e92
commit 8aebbaad21
77 changed files with 261 additions and 261 deletions

View File

@ -68,7 +68,7 @@ class ArrayDeque {
}
/* 队首出队 */
pollFirst() {
popFirst() {
const num = this.peekFirst();
// 队首指针向后移动一位
this.#front = this.index(this.#front + 1);
@ -77,7 +77,7 @@ class ArrayDeque {
}
/* 队尾出队 */
pollLast() {
popLast() {
const num = this.peekLast();
this.#queSize--;
return num;
@ -132,10 +132,10 @@ deque.pushFirst(1);
console.log("元素 1 队首入队后 deque = [" + deque.toArray() + "]");
/* 元素出队 */
const pollLast = deque.pollLast();
console.log("队尾出队元素 = " + pollLast + ",队尾出队后 deque = [" + deque.toArray() + "]");
const pollFirst = deque.pollFirst();
console.log("队首出队元素 = " + pollFirst + ",队首出队后 deque = [" + deque.toArray()+ "]");
const popLast = deque.popLast();
console.log("队尾出队元素 = " + popLast + ",队尾出队后 deque = [" + deque.toArray() + "]");
const popFirst = deque.popFirst();
console.log("队首出队元素 = " + popFirst + ",队首出队后 deque = [" + deque.toArray()+ "]");
/* 获取双向队列的长度 */
const size = deque.size();

View File

@ -44,7 +44,7 @@ class ArrayQueue {
}
/* 出队 */
poll() {
pop() {
const num = this.peek();
// 队首指针向后移动一位,若越过尾部则返回到数组头部
this.#front = (this.#front + 1) % this.capacity;
@ -89,8 +89,8 @@ const peek = queue.peek();
console.log("队首元素 peek = " + peek);
/* 元素出队 */
const poll = queue.poll();
console.log("出队元素 poll = " + poll + ",出队后 queue =", queue.toArray());
const pop = queue.pop();
console.log("出队元素 pop = " + pop + ",出队后 queue =", queue.toArray());
/* 获取队列的长度 */
const size = queue.size;
@ -103,6 +103,6 @@ console.log("队列是否为空 = " + empty);
/* 测试环形数组 */
for (let i = 0; i < 10; i++) {
queue.push(i);
queue.poll();
queue.pop();
console.log("第 " + i + " 轮入队 + 出队后 queue =", queue.toArray());
}

View File

@ -62,7 +62,7 @@ class LinkedListDeque {
}
/* 队尾出队操作 */
pollLast() {
popLast() {
if (this.#queSize === 0) {
return null;
}
@ -79,7 +79,7 @@ class LinkedListDeque {
}
/* 队首出队操作 */
pollFirst() {
popFirst() {
if (this.#queSize === 0) {
return null;
}
@ -151,11 +151,11 @@ console.log("元素 1 队首入队后 linkedListDeque = ");
linkedListDeque.print();
/* 元素出队 */
const pollLast = linkedListDeque.pollLast();
console.log("队尾出队元素 = " + pollLast + ",队尾出队后 linkedListDeque = ");
const popLast = linkedListDeque.popLast();
console.log("队尾出队元素 = " + popLast + ",队尾出队后 linkedListDeque = ");
linkedListDeque.print();
const pollFirst = linkedListDeque.pollFirst();
console.log("队首出队元素 = " + pollFirst + ",队首出队后 linkedListDeque = ");
const popFirst = linkedListDeque.popFirst();
console.log("队首出队元素 = " + popFirst + ",队首出队后 linkedListDeque = ");
linkedListDeque.print();
/* 获取双向队列的长度 */

View File

@ -44,7 +44,7 @@ class LinkedListQueue {
}
/* 出队 */
poll() {
pop() {
const num = this.peek();
// 删除头结点
this.#front = this.#front.next;
@ -90,8 +90,8 @@ const peek = queue.peek();
console.log("队首元素 peek = " + peek);
/* 元素出队 */
const poll = queue.poll();
console.log("出队元素 poll = " + poll + ",出队后 queue = " + queue.toArray());
const pop = queue.pop();
console.log("出队元素 pop = " + pop + ",出队后 queue = " + queue.toArray());
/* 获取队列的长度 */
const size = queue.size;

View File

@ -23,8 +23,8 @@ console.log("队首元素 peek =", peek);
/* 元素出队 */
// 底层是数组,因此 shift() 方法的时间复杂度为 O(n)
const poll = queue.shift();
console.log("出队元素 poll =", poll, ",出队后 queue = ", queue);
const pop = queue.shift();
console.log("出队元素 pop =", pop, ",出队后 queue = ", queue);
/* 获取队列的长度 */
const size = queue.length;