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

什么网站可以做旅行行程单建网站模板

什么网站可以做旅行行程单,建网站模板,wordpress css样式表,长沙 外贸网站建设公司价格最小字典序模版 最小字典序单调栈思路解析 1. 问题定义 给定一个字符串 num 和一个整数 k,要求移除 k 个字符后,使剩下的字符串是所有可能结果中字典序最小的。 2. 关键观察 字典序特性:高位字符对字典序的影响大于低位字符。 贪心选择&…

最小字典序模版

最小字典序单调栈思路解析

1. 问题定义

给定一个字符串 num 和一个整数 k,要求移除 k 个字符后,使剩下的字符串是所有可能结果中字典序最小的。

2. 关键观察
  • 字典序特性:高位字符对字典序的影响大于低位字符。

  • 贪心选择:为了得到最小字典序,应尽可能让高位字符保持较小值。

3. 单调栈的作用
  • 维护单调递增栈:栈中存储字符,保证栈顶到栈底字符单调递增。

  • 移除策略

    • 当当前字符 s 小于栈顶字符且还可以移除字符(k > 0)时,弹出栈顶字符(相当于移除一个字符)。

    • 这样可以确保高位字符尽可能小。

4. 特殊处理
  • 前导零:如果栈为空且当前字符是 '0',则不压入栈(避免前导零)。

  • 剩余移除:如果遍历完字符串后仍有 k > 0,直接从栈末尾移除 k 个字符(因为此时栈是单调递增的,末尾字符较大)。

#include <string>
#include <stack>
using namespace std;class Solution {
public:string removeKdigits(string num, int k) {string stk;  // 用字符串模拟单调栈for (char s : num) {// 当还能移除(k>0)、栈非空且栈顶字符>当前字符时,弹出栈顶while (k > 0 && !stk.empty() && stk.back() > s) {stk.pop_back();k--;}// 避免前导零:栈为空时不压入'0'if (!(stk.empty() && s == '0')) {stk.push_back(s);}}// 处理剩余的k(移除末尾的k个字符)while (k-- > 0 && !stk.empty()) {stk.pop_back();}// 栈为空时返回"0",否则返回栈内容return stk.empty() ? "0" : stk;}
};

经典例题907. 子数组的最小值之和 - 力扣(LeetCode)

本文参考了力扣的灵山爱抚茶的题单分享|【算法题单】单调栈(矩形面积/贡献法/最小字典序)- 讨论 - 力扣(LeetCode)

http://www.dtcms.com/wzjs/30997.html

相关文章:

  • 好看的网站设计网站创建公司
  • 大连市网站制作电话百度推广的四种收费形式
  • 青岛北京网站建设公司账号权重查询
  • wordpress mysql port厦门网站搜索引擎优化
  • 如何用小米路由器做网站2023广州疫情最新消息今天
  • 台州做网站优化哪家好上海谷歌推广
  • 镇江建工建设集团网站今天军事新闻最新消息
  • 公司网站建设开发方案百度竞价培训班
  • 罗湖网站设计价格搜什么关键词能找到网站
  • 无锡哪里有建设网站google优化排名
  • 做指甲的网站叫什么名字来着免费站推广网站不用下载
  • 桂林网站开发男生最喜欢的浏览器
  • 网站开发怎么做windows优化大师怎么用
  • 如何给网站做右侧导航seo排名大概多少钱
  • 个人备案网站内不能出现什么内容河北seo诊断培训
  • 吉林教育网站建设方案google下载app
  • 龙华网站制作公司win7最好的优化软件
  • 做网站交互效果用什么软件今天发生的重大新闻
  • 郑州最好的妇科医院seo云优化是什么意思
  • 京东的网站建设历史重庆seo技术教程
  • 自己做网站 发布视频教程软文广告
  • 深圳网站排名优化团队网站优化公司排名
  • 上海做网站公司做网站的公司百度认证怎么认证
  • 网页设计实训总结报告3000字专业seo网络营销公司
  • wordpress 站内搜索百度网页版主页
  • 网址和网站的区别郴州网站建设
  • 合肥建设厅网站sem和seo是什么职业
  • 中企动力做网站的价格宁波seo网络优化公司
  • 塑料袋销售做哪个网站推广好品牌宣传策划方案
  • 做什么网站比较简单上海网站seo招聘