- 求最大公约数
0与任何数字的最大公约数都是非0数字。
int gcd(int lhs,int rhs){//默认lhs>=rhs
if (rhs==0){
return lhs;
}
return gcd(rhs,lhs%rhs);//辗转相除
} - 冒泡排序
for(int i=0;i<n;++i){
for(int j=i+1;j<n;++j){
if(str[i]>str[j]){
swap(str[i],str[j]);//让j始终位于i的下一位,看如何冒泡;
}
}
}
3.去除特定的字符,用for循环遍历整个字符串,while循环找特定字符,用i记录位置,找到则str.erase(i,1)
4.判断是否回文,及字符串是否对称
可以用left=0;right=str.size()-1;
while(left<right){
if(str[left]!=str[right]){
return false;
}
left++;
right--;
}
return true;