「 每日一练,快乐水题 」944. 删列造序

「 每日一练,快乐水题 」944. 删列造序,第1张

文章目录
    • 🔴力扣原题:
    • 🟠题目简述:
    • 🟡解题思路:
    • 🟢C++代码:
    • 🔵结果展示:


🔴力扣原题:

944. 删列造序

🟠题目简述:

给你由 n 个小写字母字符串组成的数组 strs,其中每个字符串长度相等。

这些字符串可以每个一行,排成一个网格。例如,strs = [“abc”, “bce”, “cae”] 可以排列为:

abc
bce
cae
你需要找出并删除 不是按字典序升序排列的 列。在上面的例子(下标从 0 开始)中,列 0(‘a’, ‘b’, ‘c’)和列 2(‘c’, ‘e’, ‘e’)都是按升序排列的,而列 1(‘b’, ‘c’, ‘a’)不是,所以要删除列 1 。

返回你需要删除的列数。

🟡解题思路:
  1. 模拟遍历;
  2. over;
🟢C++代码:
class Solution {
public:
    int minDeletionSize(vector<string>& strs) {
        int nRow = strs.size(); ///< 行数
        int nCol = strs[0].size(); ///< 列数

        int res = 0;

        for(int i = 0; i < nCol; i++)
        {
            for(int j = 0; j < nRow-1; j++)
            {
                if(strs[j][i] > strs[j+1][i])
                {
                    res++;
                    break;
                }
            }
        }

        return res;
    }
};
🔵结果展示:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/914894.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存