Update the chapter of stack and queue.

pull/409/head
krahets 2 years ago
parent 050b922f8a
commit 82bbdd444d

@ -26,7 +26,7 @@ int main() {
cout << "栈顶元素 top = " << top << endl;
/* 元素出栈 */
stack.pop();
stack.pop(); // 无返回值
cout << "出栈元素 pop = " << top << ",出栈后 stack = ";
PrintUtil::printStack(stack);

@ -11,23 +11,22 @@ import java.util.*;
public class stack {
public static void main(String[] args) {
/* 初始化栈 */
// 在 Java 中,推荐将 ArrayList 当作栈来使用
List<Integer> stack = new ArrayList<>();
Stack<Integer> stack = new Stack<>();
/* 元素入栈 */
stack.add(1);
stack.add(3);
stack.add(2);
stack.add(5);
stack.add(4);
stack.push(1);
stack.push(3);
stack.push(2);
stack.push(5);
stack.push(4);
System.out.println("栈 stack = " + stack);
/* 访问栈顶元素 */
int peek = stack.get(stack.size() - 1);
int peek = stack.peek();
System.out.println("栈顶元素 peek = " + peek);
/* 元素出栈 */
int pop = stack.remove(stack.size() - 1);
int pop = stack.pop();
System.out.println("出栈元素 pop = " + pop + ",出栈后 stack = " + stack);
/* 获取栈的长度 */

@ -6,7 +6,7 @@
## 双向队列常用操作
双向队列的常用操作见下表,方法名需根据特定语言来确定。
双向队列的常用操作见下表,方法名需根据语言来确定,此处以 Java 为例
<div class="center-table" markdown>
@ -18,8 +18,6 @@
| pollLast() | 删除队尾元素 | $O(1)$ |
| peekFirst() | 访问队首元素 | $O(1)$ |
| peekLast() | 访问队尾元素 | $O(1)$ |
| size() | 获取队列的长度 | $O(1)$ |
| isEmpty() | 判断队列是否为空 | $O(1)$ |
</div>

@ -8,7 +8,7 @@
## 队列常用操作
队列的常用操作见下表,方法名需根据特定语言来确定。
队列的常用操作见下表,方法名需根据语言来确定,此处以 Java 为例
<div class="center-table" markdown>
@ -16,9 +16,7 @@
| --------- | -------------------------- | -------- |
| push() | 元素入队,即将元素添加至队尾 | $O(1)$ |
| poll() | 队首元素出队 | $O(1)$ |
| front() | 访问队首元素 | $O(1)$ |
| size() | 获取队列的长度 | $O(1)$ |
| isEmpty() | 判断队列是否为空 | $O(1)$ |
| peek() | 访问队首元素 | $O(1)$ |
</div>

@ -10,7 +10,7 @@
## 栈常用操作
栈的常用操作见下表(方法命名以 Java 为例)
栈的常用操作见下表,方法名需根据语言来确定,此处以 Java 为例
<div class="center-table" markdown>
@ -19,8 +19,6 @@
| push() | 元素入栈(添加至栈顶) | $O(1)$ |
| pop() | 栈顶元素出栈 | $O(1)$ |
| peek() | 访问栈顶元素 | $O(1)$ |
| size() | 获取栈的长度 | $O(1)$ |
| isEmpty() | 判断栈是否为空 | $O(1)$ |
</div>
@ -30,21 +28,20 @@
```java title="stack.java"
/* 初始化栈 */
// 在 Java 中,推荐将 ArrayList 当作栈来使用
List<Integer> stack = new ArrayList<>();
Stack<Integer> stack = new Stack<>();
/* 元素入栈 */
stack.add(1);
stack.add(3);
stack.add(2);
stack.add(5);
stack.add(4);
stack.push(1);
stack.push(3);
stack.push(2);
stack.push(5);
stack.push(4);
/* 访问栈顶元素 */
int peek = stack.get(stack.size() - 1);
int peek = stack.peek();
/* 元素出栈 */
int pop = stack.remove(stack.size() - 1);
int pop = stack.pop();
/* 获取栈的长度 */
int size = stack.size();
@ -70,7 +67,7 @@
int top = stack.top();
/* 元素出栈 */
stack.pop();
stack.pop(); // 无返回值
/* 获取栈的长度 */
int size = stack.size();

Loading…
Cancel
Save