2024.3.20 算法

  1. 求最大公约数
    0与任何数字的最大公约数都是非0数字。
    int gcd(int lhs,int rhs){//默认lhs>=rhs
    if (rhs==0){
    return lhs;
    }
    return gcd(rhs,lhs%rhs);//辗转相除
    }
  2. 冒泡排序
    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;
posted @ 2024-03-20 20:11  writecodechangeworld  阅读(21)  评论(0)    收藏  举报