We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 3a99bee + dba8820 commit d337b0cCopy full SHA for d337b0c
problems/0739.每日温度.md
@@ -455,7 +455,27 @@ function dailyTemperatures(temperatures: number[]): number[] {
455
};
456
```
457
458
-
+Rust:
459
+
460
+```rust
461
+impl Solution {
462
+ /// 单调栈的本质是以空间换时间,记录之前已访问过的非递增子序列下标
463
+ pub fn daily_temperatures(temperatures: Vec<i32>) -> Vec<i32> {
464
+ let mut res = vec![0; temperatures.len()];
465
+ let mut stack = vec![];
466
+ for (idx, &value) in temperatures.iter().enumerate() {
467
+ while !stack.is_empty() && temperatures[*stack.last().unwrap()] < value {
468
+ // 弹出,并计算res中对应位置的值
469
+ let i = stack.pop().unwrap();
470
+ res[i] = (idx - i) as i32;
471
+ }
472
+ // 入栈
473
+ stack.push(idx)
474
475
+ res
476
477
+}
478
+```
479
480
481
<p align="center">
0 commit comments