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

经典算法题之删列造序(二)

解决方案

方法一:直接遍历思路和算法

题目要求删除不是按字典序升序排列的列,由于每个字符串的长度都相等,我们可以逐列访问字符串数组,统计不是按字典序升序排列的列。

对于第 j 列的字符串,我们需要检测所有相邻字符是否均满足 strs [ i−1 ] [ j ] ≤ strs [ i ][ j ]。

代码

Java

class Solution { public int minDeletionSize(String[] strs) { int row = strs.length; int col = strs[0].length(); int ans = 0; for (int j = 0; j < col; ++j) { for (int i = 1; i < row; ++i) { if (strs[i - 1].charAt(j) > strs[i].charAt(j)) { ans++; break; } } } return ans; } }

C++

class Solution { public: int minDeletionSize(vector<string>& strs) { int row = strs.size(); int col = strs[0].size(); int ans = 0; for (int j = 0; j < col; ++j) { for (int i = 1; i < row; ++i) { if (strs[i - 1][j] > strs[i][j]) { ans++; break; } } } return ans; } };

C

int minDeletionSize(char ** strs, int strsSize) { int row = strsSize; int col = strlen(strs[0]); int ans = 0; for (int j = 0; j < col; ++j) { for (int i = 1; i < row; ++i) { if (strs[i - 1][j] > strs[i][j]) { ans++; break; } } } return ans; }

复杂度分析

时间复杂度:O(m×n),其中 m 为字符串数组的长度,n 为数组中每个字符串的长度,判定每一列的的字典序需要遍历字符串数组每一列,因此时间复杂度为 O(m×n)。

空间复杂度:O(1)。

http://www.jsqmd.com/news/909507/

相关文章:

  • 八大网盘直链解析终极指南:告别下载限速,实现全平台高速下载
  • 别再瞎存经纬度了!用Python实测不同小数位对距离计算的影响(附完整代码)
  • Arduino蓝牙遥控小车制作:从硬件连接到代码解析
  • 北京专业改灯|透镜升级・大灯维修首选波波改灯 - 北京新语
  • 2026年山东工业气体系统运营商深度选型指南:液氧液氮液氩、特种气体、现场制气一站式解决方案 - 年度推荐企业名录
  • 2026年重卡充电桩排行榜横评:功率覆盖、液冷稳定性与重载场景认证体系全对比 - 科技焦点
  • OBS RTSP服务器插件:5分钟实现零延迟本地直播的完整指南
  • 京东秒杀神器:3步实现自动化抢购,告别手速焦虑
  • 树莓派智能魔镜DIY:从硬件选型到软件配置全攻略
  • 上海徐汇区黄金回收哪家靠谱?2026正规门店选择及交易避坑攻略 - 速递信息
  • Windows系统性能优化实战:从进程管理到自动化清理
  • PIE-SAR实战:如何用它的区域网平差模块,高效搞定大范围GF-3数据DOM生产?
  • LLM和Agent——专题5: LLM Ops 入门(2)
  • 2026年贵阳观山湖、白云区中高端室内全案设计深度横评:从贵州精装室内设计到贵州全屋整装的完整避坑导则 - 年度推荐企业名录
  • 告别假货水货!CH站Cigarhome欧洲多国lacasa行货直供,古巴非古雪茄一站式选购(2026) - damaigeo
  • Windows和Office智能激活终极指南:KMS_VL_ALL_AIO一键解决方案
  • 国内门窗十大品牌盘点:基于资质与实测的客观排行 - 奔跑123
  • 别再纠结选哪个了!手把手教你用信号发生器和面包板实测驻极体MIC与数字硅麦(附波形图)
  • OpenCore Legacy Patcher终极指南:三步让老Mac重获新生
  • 轨迹数据太稀疏?试试TRACLUS的‘分段+聚类’两步法,5分钟讲清MDL与密度聚类怎么结合
  • 2026四川成都卫校靠谱学校综合盘点:四家正规民办院校选校参考 - 深度智识库
  • UE4 Sequencer入门避坑指南:从‘初识Sequencer’工程到创建第一个移动动画的全流程
  • 门窗十大品牌实测排行:核心梯队品质与资质对比 - 奔跑123
  • 从零制作电磁铁:原理、材料与实操指南
  • Java 全角半角假名转换以及验证
  • 2026年甄选:口碑好的不锈钢钣金加工定制厂家 - 品牌推广大师
  • 202 郑州名包回收指南:正规渠道怎么选、估价逻辑与安心变现要点 - 薛定谔的梨花猫
  • Claude商业分析报告交付延迟率高达47%?——3大架构级瓶颈诊断工具+实时流式响应改造方案(已验证于金融/零售双行业)
  • 四个点扫描举例
  • 告别基础材料库!CST高级材料建模实战:手把手教你创建频变吸波材料与自定义各向异性介质