啊啊啊啊,好烦啊,第三道题目超了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),算法不是很好,希望再改进吧。