mirror of
https://github.com/krahets/hello-algo.git
synced 2025-12-19 07:17:54 +08:00
refactor: Replace poll with pop in Queue and Deque (#415)
This commit is contained in:
@@ -6,18 +6,18 @@
|
||||
|
||||
## 双向队列常用操作
|
||||
|
||||
双向队列的常用操作见下表,方法名需根据语言来确定,此处以 Java 为例。
|
||||
双向队列的常用操作见下表,方法名需根据语言来确定。
|
||||
|
||||
<div class="center-table" markdown>
|
||||
|
||||
| 方法名 | 描述 | 时间复杂度 |
|
||||
| ------------ | ---------------- | ---------- |
|
||||
| pushFirst() | 将元素添加至队首 | $O(1)$ |
|
||||
| pushLast() | 将元素添加至队尾 | $O(1)$ |
|
||||
| pollFirst() | 删除队首元素 | $O(1)$ |
|
||||
| pollLast() | 删除队尾元素 | $O(1)$ |
|
||||
| peekFirst() | 访问队首元素 | $O(1)$ |
|
||||
| peekLast() | 访问队尾元素 | $O(1)$ |
|
||||
| 方法名 | 描述 | 时间复杂度 |
|
||||
| ----------- | -------------- | ---------- |
|
||||
| pushFirst() | 将元素添加至队首 | $O(1)$ |
|
||||
| pushLast() | 将元素添加至队尾 | $O(1)$ |
|
||||
| popFirst() | 删除队首元素 | $O(1)$ |
|
||||
| popLast() | 删除队尾元素 | $O(1)$ |
|
||||
| peekFirst() | 访问队首元素 | $O(1)$ |
|
||||
| peekLast() | 访问队尾元素 | $O(1)$ |
|
||||
|
||||
</div>
|
||||
|
||||
@@ -41,8 +41,8 @@
|
||||
int peekLast = deque.peekLast(); // 队尾元素
|
||||
|
||||
/* 元素出队 */
|
||||
int pollFirst = deque.pollFirst(); // 队首元素出队
|
||||
int pollLast = deque.pollLast(); // 队尾元素出队
|
||||
int popFirst = deque.pollFirst(); // 队首元素出队
|
||||
int popLast = deque.pollLast(); // 队尾元素出队
|
||||
|
||||
/* 获取双向队列的长度 */
|
||||
int size = deque.size();
|
||||
@@ -266,9 +266,9 @@
|
||||
let peekLast = deque.last! // 队尾元素
|
||||
|
||||
/* 元素出队 */
|
||||
// 使用 Array 模拟时 pollFirst 的复杂度为 O(n)
|
||||
let pollFirst = deque.removeFirst() // 队首元素出队
|
||||
let pollLast = deque.removeLast() // 队尾元素出队
|
||||
// 使用 Array 模拟时 popFirst 的复杂度为 O(n)
|
||||
let popFirst = deque.removeFirst() // 队首元素出队
|
||||
let popLast = deque.removeLast() // 队尾元素出队
|
||||
|
||||
/* 获取双向队列的长度 */
|
||||
let size = deque.count
|
||||
@@ -304,11 +304,11 @@
|
||||
=== "pushFirst()"
|
||||

|
||||
|
||||
=== "pollLast()"
|
||||

|
||||
=== "popLast()"
|
||||

|
||||
|
||||
=== "pollFirst()"
|
||||

|
||||
=== "popFirst()"
|
||||

|
||||
|
||||
以下是具体实现代码。
|
||||
|
||||
@@ -403,11 +403,11 @@
|
||||
=== "pushFirst()"
|
||||

|
||||
|
||||
=== "pollLast()"
|
||||

|
||||
=== "popLast()"
|
||||

|
||||
|
||||
=== "pollFirst()"
|
||||

|
||||
=== "popFirst()"
|
||||

|
||||
|
||||
以下是具体实现代码。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user