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

@@ -69,7 +69,7 @@ class ArrayDeque {
}
/* 队首出队 */
pollFirst(): number {
popFirst(): number {
const num: number = this.peekFirst();
// 队首指针向后移动一位
this.front = this.index(this.front + 1);
@@ -78,7 +78,7 @@ class ArrayDeque {
}
/* 队尾出队 */
pollLast(): number {
popLast(): number {
const num: number = this.peekLast();
this.queSize--;
return num;
@@ -133,10 +133,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

@@ -45,7 +45,7 @@ class ArrayQueue {
}
/* 出队 */
poll(): number {
pop(): number {
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,7 +103,7 @@ 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(): number {
popLast(): number {
if (this.queSize === 0) {
return null;
}
@@ -79,7 +79,7 @@ class LinkedListDeque {
}
/* 队首出队操作 */
pollFirst(): number {
popFirst(): number {
if (this.queSize === 0) {
return null;
}
@@ -151,11 +151,11 @@ console.log("元素 1 队首入队后 linkedListDeque = ");
linkedListDeque.print();
/* 元素出队 */
const pollLast: number = linkedListDeque.pollLast();
console.log("队尾出队元素 = " + pollLast + ",队尾出队后 linkedListDeque = ");
const popLast: number = linkedListDeque.popLast();
console.log("队尾出队元素 = " + popLast + ",队尾出队后 linkedListDeque = ");
linkedListDeque.print();
const pollFirst: number = linkedListDeque.pollFirst();
console.log("队首出队元素 = " + pollFirst + ",队首出队后 linkedListDeque = ");
const popFirst: number = linkedListDeque.popFirst();
console.log("队首出队元素 = " + popFirst + ",队首出队后 linkedListDeque = ");
linkedListDeque.print();
/* 获取双向队列的长度 */

View File

@@ -44,7 +44,7 @@ class LinkedListQueue {
}
/* 出队 */
poll(): number {
pop(): number {
const num = this.peek();
if (!this.front) throw new Error('队列为空');
// 删除头结点
@@ -88,8 +88,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;