LeetCode 316. 去除重复字母 / 1081. 不同字符的最小子序列(单调栈)
文章目錄
- 1. 題目
- 2. 解題
1. 題目
LC 316:
給你一個(gè)字符串 s ,請(qǐng)你去除字符串中重復(fù)的字母,使得每個(gè)字母只出現(xiàn)一次。需保證 返回結(jié)果的字典序最小(要求不能打亂其他字符的相對(duì)位置)。
示例 1: 輸入:s = "bcabc" 輸出:"abc"示例 2: 輸入:s = "cbacdcbc" 輸出:"acdb"提示: 1 <= s.length <= 10^4 s 由小寫英文字母組成來(lái)源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/remove-duplicate-letters
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
LC 1081:
返回字符串 text 中按字典序排列最小的子序列,該子序列包含 text 中所有不同字符一次。
示例 1: 輸入:"cdadabcc" 輸出:"adbc"示例 2: 輸入:"abcd" 輸出:"abcd"示例 3: 輸入:"ecbacba" 輸出:"eacb"示例 4: 輸入:"leetcode" 輸出:"letcod"提示: 1 <= text.length <= 1000 text 由小寫英文字母組成來(lái)源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/smallest-subsequence-of-distinct-characters
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
2. 解題
- 記錄每個(gè)字符最后出現(xiàn)的位置
- 一旦前面的字符比當(dāng)前的大,且在后面還存在該大字符,則刪除該大的字符
4 ms 7.2 MB
1081題的代碼跟上面一模一樣
我的CSDN博客地址 https://michael.blog.csdn.net/
長(zhǎng)按或掃碼關(guān)注我的公眾號(hào)(Michael阿明),一起加油、一起學(xué)習(xí)進(jìn)步!
總結(jié)
以上是生活随笔為你收集整理的LeetCode 316. 去除重复字母 / 1081. 不同字符的最小子序列(单调栈)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LeetCode MySQL 1355.
- 下一篇: LeetCode 1576. 替换所有的