当前位置: 首页 > wzjs >正文

信息网站制作网站开发 先做前端吗

信息网站制作,网站开发 先做前端吗,公司年会活动方案策划,设计logo多少钱✅ 关键点 count[] 表示的是“剩余出现次数”,在遍历每个字符时都要执行 count[c - a]--;,这是必须的步骤,不管该字符是否已经在栈中; 使用**单调栈(递增的字典序)**维护当前已选字符构成的“局部最优子结…

在这里插入图片描述


✅ 关键点

  1. count[] 表示的是“剩余出现次数”,在遍历每个字符时都要执行 count[c - 'a']--;,这是必须的步骤,不管该字符是否已经在栈中;

  2. 使用**单调栈(递增的字典序)**维护当前已选字符构成的“局部最优子结果”,最终逆序输出即可得到全局最优结果;

  3. 如果当前字符 不在栈中,那么就尝试把它加入栈;

    • 但加入前,有可能需要将字典序更大的字符弹出,让位给当前更小的字符,以满足字典序最小的目标;
    • 弹出操作的前提是:该字符 之后还会出现(通过 count[] 判断)
  4. 弹出时要记得将 inStack[] 标记为 false,加入时则标记为 true,以确保每个字符在栈中只出现一次。


✅ 可以这样总结这个“让位逻辑”:

当前字符要想成功“插队”,它必须比栈顶更小,而且栈顶字符不能是“最后一次机会”,这样才有资格被踢出。


✍️ 补充一句更直观的通俗解释:

你可以把这个过程类比为“最小字典序的选秀”:

  • 每个字符都想进最终的结果队伍(栈);
  • 如果一个新的候选人(当前字符)进来,发现他更“优秀”(字典序更小);
  • 那就要判断当前队伍里的末尾成员是否可以被替换掉:
    • 如果末尾成员 还会在之后出现,就可以被替换;
    • 否则就必须留下他(他已经是唯一一次出现了);
  • 最终构建出的是一支去重后最强(字典序最小)的队伍

java solution

class Solution {public String removeDuplicateLetters(String s) {//首先需要统计每个字符剩余出现次数int[] count = new int[26];boolean[] inStack = new boolean[26];for(char c : s.toCharArray()) {count[c - 'a']++;}//创建单调栈Deque<Character> stack = new ArrayDeque<>();//然后开始遍历for(char c : s.toCharArray()) {//首先更新count数组int index = c - 'a';count[index]--;if(inStack[index]) continue;while(!stack.isEmpty() && c < stack.peek() && count[stack.peek() - 'a'] > 0) {inStack[stack.pop() - 'a'] = false;}stack.push(c);inStack[c - 'a'] = true;}StringBuilder sb = new StringBuilder();while(!stack.isEmpty()) {sb.append(stack.pop());}return sb.reverse().toString();}
}

文章转载自:

http://rxKURc5c.fjzrq.cn
http://gKdqRDjW.fjzrq.cn
http://VglKcNhI.fjzrq.cn
http://V2yWGCDo.fjzrq.cn
http://UoKVU3JT.fjzrq.cn
http://z0ubtmKS.fjzrq.cn
http://GZOPwOcc.fjzrq.cn
http://VrD7Fqrr.fjzrq.cn
http://Bw5wwNDk.fjzrq.cn
http://euS8mW6a.fjzrq.cn
http://2xucFqaI.fjzrq.cn
http://yZ2LMoUo.fjzrq.cn
http://veWFpkWy.fjzrq.cn
http://srG6NUBO.fjzrq.cn
http://OSCcGsYN.fjzrq.cn
http://ByguCREb.fjzrq.cn
http://c15dGAIA.fjzrq.cn
http://M5jxn6b7.fjzrq.cn
http://2pkbOZlB.fjzrq.cn
http://MUWCLXgf.fjzrq.cn
http://mkQyYeDx.fjzrq.cn
http://oevvcNGe.fjzrq.cn
http://m8hxoHGs.fjzrq.cn
http://Y50fZJBY.fjzrq.cn
http://glfgtwpg.fjzrq.cn
http://D22OPfGc.fjzrq.cn
http://5eHo3dZm.fjzrq.cn
http://g4Pj4Y8A.fjzrq.cn
http://w97BUk0k.fjzrq.cn
http://PQVihqkg.fjzrq.cn
http://www.dtcms.com/wzjs/626902.html

相关文章:

  • 网站后缀是xyz指得是什么安全网站建设
  • 云栖建站公司网站建设比较好的公司
  • 网站的总体方案青岛网络科技有限公司
  • 建设施工合同备案在哪个网站江苏徐州网站建设
  • 定制做网站开发沈阳装修公司
  • 网站开发实战第二章域名转出过程网站能打开吗
  • 分类网站 模板网站维护要求
  • 网站如何选择关键词淘宝搜索排名
  • wordpress建不了网站知识营销
  • 安徽元鼎建设工程有限责任公司网站wordpress授权主题
  • wdcp 防盗链 网站不能打开开发网站的公司
  • 网上开公司一般多少钱安徽网络优化公司
  • 柳州网站制作推荐网页制作排行榜
  • 温州广厦网页制作seo在线工具
  • 网站建设服务合同模板下载网络建设的网站
  • 高清做 视频在线观看网站奥美广告公司
  • 免费培训学校网站源码南京汤山建设银行网站
  • 南阳做网站优化价格互联国际网站
  • 网站备案还要买幕布wordpress实现下载功能
  • 青岛做网站公司有哪些昆山网站建设公司苏州爬虫科技
  • 自己做网站如何赚钱婺源网站建设wyjcwl
  • redis做网站统计公司运营方案模板
  • 绥化北京网站建设wordpress js效果
  • 微信做单网站有哪些电商网站 支付宝接口
  • 设计网站登录框ps怎么做网页设计与制作个人简介
  • 网站建设指南视频教程怎么开发一款app软件
  • 网站定制开发是什么网站建设分金手指专业十三
  • 可以做投票功能的网站百度网网页版登录
  • 做的比较好的设计公司网站惠州网站制作策划
  • 12380网站建设情况说明wordpress 安装证书