mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-06 15:09:40 +08:00
更新 0225.用队列实现栈 排版格式修复
This commit is contained in:
@ -25,11 +25,11 @@
|
||||
* 你所使用的语言也许不支持队列。 你可以使用 list 或者 deque(双端队列)来模拟一个队列 , 只要是标准的队列操作即可。
|
||||
* 你可以假设所有操作都是有效的(例如, 对一个空的栈不会调用 pop 或者 top 操作)。
|
||||
|
||||
## 算法公开课
|
||||
|
||||
# 思路
|
||||
**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html):[队列的基本操作! | LeetCode:225. 用队列实现栈](https://www.bilibili.com/video/BV1Fd4y1K7sm),相信结合视频再看本篇题解,更有助于大家对本题的理解**。
|
||||
|
||||
|
||||
《代码随想录》算法公开课:[队列的基本操作! | LeetCode:225. 用队列实现栈](https://www.bilibili.com/video/BV1Fd4y1K7sm),相信结合视频再看本篇题解,更有助于大家对链表的理解。
|
||||
## 思路
|
||||
|
||||
|
||||
(这里要强调是单向队列)
|
||||
@ -114,7 +114,7 @@ public:
|
||||
* 时间复杂度: push为O(n),其他为O(1)
|
||||
* 空间复杂度: O(n)
|
||||
|
||||
# 优化
|
||||
## 优化
|
||||
|
||||
其实这道题目就是用一个队列就够了。
|
||||
|
||||
@ -162,9 +162,9 @@ public:
|
||||
* 空间复杂度: O(n)
|
||||
|
||||
|
||||
# 其他语言版本
|
||||
## 其他语言版本
|
||||
|
||||
Java:
|
||||
### Java:
|
||||
|
||||
使用两个 Queue 实现方法1
|
||||
```java
|
||||
@ -404,7 +404,7 @@ class MyStack {
|
||||
}
|
||||
```
|
||||
|
||||
Python:
|
||||
### Python:
|
||||
|
||||
```python
|
||||
from collections import deque
|
||||
@ -496,8 +496,7 @@ class MyStack:
|
||||
return not self.que
|
||||
```
|
||||
|
||||
|
||||
Go:
|
||||
### Go:
|
||||
|
||||
使用两个队列实现
|
||||
```go
|
||||
@ -628,9 +627,7 @@ func (this *MyStack) Empty() bool {
|
||||
*/
|
||||
```
|
||||
|
||||
|
||||
|
||||
javaScript:
|
||||
### JavaScript:
|
||||
|
||||
使用数组(push, shift)模拟队列
|
||||
|
||||
@ -740,7 +737,7 @@ MyStack.prototype.empty = function() {
|
||||
|
||||
```
|
||||
|
||||
TypeScript:
|
||||
### TypeScript:
|
||||
|
||||
版本一:使用两个队列模拟栈
|
||||
|
||||
@ -812,7 +809,7 @@ class MyStack {
|
||||
}
|
||||
```
|
||||
|
||||
Swift
|
||||
### Swift:
|
||||
|
||||
```Swift
|
||||
// 定义一个队列数据结构
|
||||
@ -931,8 +928,9 @@ class MyStack {
|
||||
}
|
||||
}
|
||||
```
|
||||
Scala:
|
||||
### Scala:
|
||||
使用两个队列模拟栈:
|
||||
|
||||
```scala
|
||||
import scala.collection.mutable
|
||||
|
||||
@ -1015,8 +1013,8 @@ class MyStack() {
|
||||
}
|
||||
```
|
||||
|
||||
### C#:
|
||||
|
||||
C#:
|
||||
```csharp
|
||||
public class MyStack {
|
||||
Queue<int> queue1;
|
||||
@ -1051,8 +1049,9 @@ public class MyStack {
|
||||
}
|
||||
```
|
||||
|
||||
PHP
|
||||
> 双对列
|
||||
### PHP:
|
||||
|
||||
> 双队列
|
||||
```php
|
||||
// SplQueue 类通过使用一个双向链表来提供队列的主要功能。(PHP 5 >= 5.3.0, PHP 7, PHP 8)
|
||||
// https://www.php.net/manual/zh/class.splqueue.php
|
||||
@ -1130,6 +1129,8 @@ class MyStack {
|
||||
}
|
||||
```
|
||||
|
||||
### Rust:
|
||||
|
||||
> rust:单队列
|
||||
|
||||
```rust
|
||||
|
Reference in New Issue
Block a user