diff --git a/problems/1047.删除字符串中的所有相邻重复项.md b/problems/1047.删除字符串中的所有相邻重复项.md index 486d198b..ad54f0f8 100644 --- a/problems/1047.删除字符串中的所有相邻重复项.md +++ b/problems/1047.删除字符串中的所有相邻重复项.md @@ -5,8 +5,6 @@

参与本项目,贡献其他语言版本的代码,拥抱开源,让更多学习算法的小伙伴们收益!

- - > 匹配问题都是栈的强项 # 1047. 删除字符串中的所有相邻重复项 @@ -30,11 +28,13 @@ * 1 <= S.length <= 20000 * S 仅由小写英文字母组成。 -# 思路 +## 算法公开课 -《代码随想录》算法视频公开课:[栈的好戏还要继续!| LeetCode:1047. 删除字符串中的所有相邻重复项](https://www.bilibili.com/video/BV12a411P7mw),相信结合视频在看本篇题解,更有助于大家对本题的理解。 +**[《代码随想录》算法视频公开课](https://programmercarl.com/other/gongkaike.html):[栈的好戏还要继续!| LeetCode:1047. 删除字符串中的所有相邻重复项](https://www.bilibili.com/video/BV12a411P7mw),相信结合视频再看本篇题解,更有助于大家对本题的理解**。 -## 正题 +## 思路 + +### 正题 本题要删除相邻相同元素,相对于[20. 有效的括号](https://programmercarl.com/0020.%E6%9C%89%E6%95%88%E7%9A%84%E6%8B%AC%E5%8F%B7.html)来说其实也是匹配问题,20. 有效的括号 是匹配左右括号,本题是匹配相邻元素,最后都是做消除的操作。 @@ -105,7 +105,7 @@ public: * 时间复杂度: O(n) * 空间复杂度: O(1),返回值不计空间复杂度 -## 题外话 +### 题外话 这道题目就像是我们玩过的游戏对对碰,如果相同的元素挨在一起就要消除。 @@ -125,8 +125,7 @@ public: ## 其他语言版本 - -Java: +### Java: 使用 Deque 作为堆栈 ```Java @@ -203,7 +202,8 @@ class Solution { } ``` -Python: +### Python: + ```python # 方法一,使用栈 class Solution: @@ -239,7 +239,7 @@ class Solution: return ''.join(res[0: slow]) ``` -Go: +### Go: ```go func removeDuplicates(s string) string { @@ -258,7 +258,7 @@ func removeDuplicates(s string) string { } ``` -javaScript: +### JavaScript: 法一:使用栈 @@ -295,7 +295,7 @@ var removeDuplicates = function(s) { }; ``` -TypeScript: +### TypeScript: ```typescript function removeDuplicates(s: string): string { @@ -318,7 +318,7 @@ function removeDuplicates(s: string): string { }; ``` -C: +### C: 方法一:使用栈 ```c @@ -371,7 +371,8 @@ char * removeDuplicates(char * s){ } ``` -Swift: +### Swift: + ```swift func removeDuplicates(_ s: String) -> String { var stack = [Character]() @@ -386,8 +387,8 @@ func removeDuplicates(_ s: String) -> String { } ``` +### C#: -C#: ```csharp public string RemoveDuplicates(string s) { //拿字符串直接作为栈,省去了栈还要转为字符串的操作 @@ -405,8 +406,8 @@ public string RemoveDuplicates(string s) { } ``` +### PHP: -PHP: ```php class Solution { function removeDuplicates($s) { @@ -431,8 +432,8 @@ class Solution { } ``` +### Scala: -Scala: ```scala object Solution { import scala.collection.mutable @@ -455,7 +456,7 @@ object Solution { } ``` -rust: +### Rust: ```rust impl Solution {