给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。
注意事项
小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置。
class Solution {
public:
/**
* @param chars: The letters array you should sort.
*/
void sortLetters(string &letters) {
// write your code here
int length = letters.size();
if (length == 1) {
return;
}
int i = length-2;
while(i>=0) {
if(this->isCap(letters[i])==true) {
int j = i+1;
while(j<=length-1&&this->isCap(letters[j])==false) {
char temp = letters[j];
letters[j] = letters[j-1];
letters[j-1] = temp;
j++;
}
}
i--;
}
}
bool isCap(char a) {
if(a>='A' && a<='Z') {
return true;
} else {
return false;
}
}
};
网友评论