Skip to content

Commit 4027ea0

Browse files
committed
一刷232
1 parent 9f3365e commit 4027ea0

File tree

5 files changed

+86
-10
lines changed

5 files changed

+86
-10
lines changed

README.adoc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1650,13 +1650,13 @@ TIP: **公众号的微信号是: `jikerizhi`**。__因为众所周知的原因
16501650
|Easy
16511651
|
16521652

1653-
//|{counter:codes}
1654-
//|{leetcode_base_url}/implement-queue-using-stacks/[232. Implement Queue using Stacks^]
1655-
//|{source_base_url}/_0232_ImplementQueueUsingStacks.java[Java]
1656-
//|{doc_base_url}/0232-implement-queue-using-stacks.adoc[题解]
1657-
//|Easy
1658-
//|
1659-
//
1653+
|{counter:codes}
1654+
|{leetcode_base_url}/implement-queue-using-stacks/[232. Implement Queue using Stacks^]
1655+
|{source_base_url}/_0232_ImplementQueueUsingStacks.java[Java]
1656+
|{doc_base_url}/0232-implement-queue-using-stacks.adoc[题解]
1657+
|Easy
1658+
|
1659+
16601660
//|{counter:codes}
16611661
//|{leetcode_base_url}/number-of-digit-one/[233. Number of Digit One^]
16621662
//|{source_base_url}/_0233_NumberOfDigitOne.java[Java]

docs/0232-implement-queue-using-stacks.adoc

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,32 @@ queue.empty(); // returns false
3333
* You may assume that all operations are valid (for example, no pop or peek operations will be called on an empty queue).
3434
3535
36-
36+
== 思路分析
3737

3838
[[src-0232]]
39+
[tabs]
40+
====
41+
一刷::
42+
+
43+
--
3944
[{java_src_attr}]
4045
----
4146
include::{sourcedir}/_0232_ImplementQueueUsingStacks.java[tag=answer]
4247
----
48+
--
49+
50+
// 二刷::
51+
// +
52+
// --
53+
// [{java_src_attr}]
54+
// ----
55+
// include::{sourcedir}/_0232_ImplementQueueUsingStacks_2.java[tag=answer]
56+
// ----
57+
// --
58+
====
59+
60+
== 参考资料
61+
62+
. https://leetcode.cn/problems/implement-queue-using-stacks/solutions/2363977/232-yong-zhan-shi-xian-dui-lie-qing-xi-t-pi4l/?envType=study-plan-v2&envId=selected-coding-interview[232. 用栈实现队列 - 清晰图解^]
63+
4364

docs/index.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -538,7 +538,7 @@ include::0230-kth-smallest-element-in-a-bst.adoc[leveloffset=+1]
538538

539539
include::0231-power-of-two.adoc[leveloffset=+1]
540540

541-
// include::0232-implement-queue-using-stacks.adoc[leveloffset=+1]
541+
include::0232-implement-queue-using-stacks.adoc[leveloffset=+1]
542542

543543
// include::0233-number-of-digit-one.adoc[leveloffset=+1]
544544

logbook/202406.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -603,7 +603,12 @@
603603
|{counter:codes}
604604
|{leetcode_base_url}/merge-two-sorted-lists/[21. Merge Two Sorted Lists^]
605605
|{doc_base_url}/0021-merge-two-sorted-lists.adoc[题解]
606-
|递归
606+
|尝试递归解法
607+
608+
|{counter:codes}
609+
|{leetcode_base_url}/implement-queue-using-stacks/[232. Implement Queue using Stacks^]
610+
|{doc_base_url}/0232-implement-queue-using-stacks.adoc[题解]
611+
|❎
607612

608613
|===
609614

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package com.diguage.algo.leetcode;
2+
3+
import java.util.Deque;
4+
import java.util.LinkedList;
5+
6+
public class _0232_ImplementQueueUsingStacks {
7+
// tag::answer[]
8+
9+
/**
10+
* @author D瓜哥 · https://www.diguage.com
11+
* @since 2024-09-15 21:11:15
12+
*/
13+
class MyQueue {
14+
Deque<Integer> inStack;
15+
Deque<Integer> outStack;
16+
17+
18+
public MyQueue() {
19+
inStack = new LinkedList<>();
20+
outStack = new LinkedList<>();
21+
}
22+
23+
public void push(int x) {
24+
inStack.push(x);
25+
}
26+
27+
public int pop() {
28+
int peek = peek();
29+
outStack.pop();
30+
return peek;
31+
}
32+
33+
public int peek() {
34+
if (!outStack.isEmpty()) {
35+
return outStack.peek();
36+
} else {
37+
while (!inStack.isEmpty()) {
38+
outStack.push(inStack.pop());
39+
}
40+
}
41+
// TODO 这里, outStack 有可能是空啊?!
42+
return outStack.peek();
43+
}
44+
45+
public boolean empty() {
46+
return inStack.isEmpty() && outStack.isEmpty();
47+
}
48+
}
49+
// end::answer[]
50+
}

0 commit comments

Comments
 (0)