27.哀家要长脑子了!

目录

[1.316. 去除重复字母 - 力扣(LeetCode)](#1.316. 去除重复字母 - 力扣(LeetCode))

[2. 1209. 删除字符串中的所有相邻重复项 II - 力扣(LeetCode](#2. 1209. 删除字符串中的所有相邻重复项 II - 力扣(LeetCode)

哎哟 烦死了 刚刚不小心退出又没保存 又要写一遍

烦死了 最近刷题不得劲啊 感觉这脑子没长一点

1.316. 去除重复字母 - 力扣(LeetCode)

哎哟 我真的觉得神奇 好奇妙啊 怎么想到的 我真的服了

它把一个字符串做单调栈搞

用两个数组来保证字符串字典序最小(这里体现贪心的思想)与此同时又不重复 亚比 囧囧囧~~

你懂吗。。。

复制代码
class Solution {
public:
    string removeDuplicateLetters(string s) {
        vector<int> num(26), vis(26);
        for(char c : s){
            num[c - 'a']++;
        }
        string stk;
        for(char c : s){
            if(vis[c - 'a'] == 0){
                while(!stk.empty() && stk.back() > c){
                    // 这个字符后面是不是还有 
                    if(num[stk.back() - 'a'] > 0){
                        vis[stk.back() - 'a'] = 0;
                        stk.pop_back();
                    }
                    else{
                        break;
                    }
                }
                vis[c - 'a'] = 1;
                stk.push_back(c);
                
            }
            num[c - 'a']--;
        }
        return stk;
    }
};
2. 1209. 删除字符串中的所有相邻重复项 II - 力扣(LeetCode)

哎哟 我真的私密马赛 我连个暴力我都要看答案 我去死算了 骗人的哈哈

要++count 不要count++

修改后的字符串就等于原来的字符串长度了就意味着没有要改变的了 可以结束返回了

复制代码
class Solution {
public:
    string removeDuplicates(string s, int k) {
        int len = 0;
        while(len != s.size()){
            len = s.size();
            for(int i = 0, count = 1; i < s.size(); i++){
                if(i == 0 || s[i] != s[i-1]){
                    count = 1;
                }
                else if(++count == k){
                    s.erase(i - k + 1, k);
                    break;
                }
            }
        }
        return s;
    }
};

为什么我想不到啊啊啊啊

是不是总结没做到位有没有用心用脑子呢??

怎么那天没发出去。。。

相关推荐
阿豪学编程7 小时前
LeetCode724.:寻找数组的中心下标
算法·leetcode
墨韵流芳8 小时前
CCF-CSP第41次认证第三题——进程通信
c++·人工智能·算法·机器学习·csp·ccf
csdn_aspnet8 小时前
C# 求n边凸多边形的对角线数量(Find number of diagonals in n sided convex polygon)
开发语言·算法·c#
禹中一只鱼8 小时前
【力扣热题100学习笔记】 - 哈希
java·学习·leetcode·哈希算法
凌波粒9 小时前
LeetCode--349.两个数组的交集(哈希表)
java·算法·leetcode·散列表
paeamecium10 小时前
【PAT甲级真题】- Student List for Course (25)
数据结构·c++·算法·list·pat考试
Book思议-10 小时前
【数据结构】栈与队列全方位对比 + C 语言完整实现
c语言·数据结构·算法··队列
SteveSenna10 小时前
项目:Trossen Arm MuJoCo
人工智能·学习·算法
NAGNIP10 小时前
一文搞懂CNN经典架构-DenseNet!
算法·面试
道法自然|~10 小时前
BugCTF黄道十二宫
算法·密码学