class Solution {
public:
bool findNumberIn2DArray(vector<vector<int>>& matrix, int target) {
int size1=matrix.size();//行数
if(size1==0)
{
return false;
}
int size2=matrix[0].size();//列数
if(size2==0)
{
return false;
}
if(matrix[0][0]>target||target>matrix[size1-1][size2-1])
{
return false;
}
int row=0;
int line=size2-1;
while(row<size1&&line>=0)
{
if(matrix[row][line]<target)
{
++row;
}
else if(matrix[row][line]>target)
{
--line;
}
else if(matrix[row][line]==target)
{
return true;
}
}
return false;
}
};
05 替换空格
空间复杂度为O(1)写法
class Solution {
public:
string replaceSpace(string s) {
int size=s.size();
int count=0;
for(auto e:s)
{
if(e==' ')
{
++count;
}
}
s.resize(size+2*count,0);
int newsize=size+2*count;
int j=0;
for(int i=size-1, j=newsize-1;i<j;i--,j--)
{
if(s[i]!=' ')
{
s[j]=s[i];
}
else
{
s[j]='0';
s[j-1]='2';
s[j-2]='%';
j-=2;
}
}
return s;
}
};