diff --git a/docs/notes/30. 包含 min 函数的栈.md b/docs/notes/30. 包含 min 函数的栈.md index 0a776131..c572b16c 100644 --- a/docs/notes/30. 包含 min 函数的栈.md +++ b/docs/notes/30. 包含 min 函数的栈.md @@ -1,13 +1,19 @@ # 30. 包含 min 函数的栈 -[NowCoder](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) +## 题目链接 + +[牛客网](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 -定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的 min 函数。 +实现一个包含 min() 函数的栈,该方法返回当前栈中最小的值。 ## 解题思路 +使用一个额外的 minStack,栈顶元素为当前栈中最小的值。在对栈进行 push 入栈和 pop 出栈操作时,同样需要对 minStack 进行入栈出栈操作,从而使 minStack 栈顶元素一直为当前栈中最小的值。在进行 push 操作时,需要比较入栈元素和当前栈中最小值,将值较小的元素 push 到 minStack 中。 + +
image-20201104013936126

+ ```java private Stack dataStack = new Stack<>(); private Stack minStack = new Stack<>(); diff --git a/notes/30. 包含 min 函数的栈.md b/notes/30. 包含 min 函数的栈.md index 0a776131..c572b16c 100644 --- a/notes/30. 包含 min 函数的栈.md +++ b/notes/30. 包含 min 函数的栈.md @@ -1,13 +1,19 @@ # 30. 包含 min 函数的栈 -[NowCoder](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) +## 题目链接 + +[牛客网](https://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49?tpId=13&tqId=11173&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking&from=cyc_github) ## 题目描述 -定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的 min 函数。 +实现一个包含 min() 函数的栈,该方法返回当前栈中最小的值。 ## 解题思路 +使用一个额外的 minStack,栈顶元素为当前栈中最小的值。在对栈进行 push 入栈和 pop 出栈操作时,同样需要对 minStack 进行入栈出栈操作,从而使 minStack 栈顶元素一直为当前栈中最小的值。在进行 push 操作时,需要比较入栈元素和当前栈中最小值,将值较小的元素 push 到 minStack 中。 + +
image-20201104013936126

+ ```java private Stack dataStack = new Stack<>(); private Stack minStack = new Stack<>(); diff --git a/notes/pics/image-20201104013936126.png b/notes/pics/image-20201104013936126.png new file mode 100644 index 00000000..8792cb4c Binary files /dev/null and b/notes/pics/image-20201104013936126.png differ