leetcode 944. 删除列以使之有序

啊啊啊啊,好烦啊,第三道题目超了10分钟做出来了,如果不写前两道题的博客,应该可以做出3道题的,这道题为的思路是把每个字符串的对应字符取出来然后复制一份,一份进行sort排序,然后比较,如果不同,需要删除的个数就要加一,

class Solution {
public:
   int minDeletionSize(vector<string>& A) {
        int n = A.size();
        vector<char>v(n,0);
        vector<char>tem;
        int cnt = 0;
        for(int i = 0; i < A[0].size();i++)            
        {
           for(int j = 0; j < A.size();j++)       
               v[j] = (A[j][i]);
            tem = v;
            sort(v.begin(),v.end());
            if(tem !=v)
             cnt++;
        }
    return cnt;

 }

};

时间复杂度O(n*m)具体要看vector二维数组的维度,空间复杂度O(n),算法不是很好,希望再改进吧。

猜你喜欢

转载自blog.csdn.net/weixin_42183514/article/details/84197267