算法常用思路总结

发布时间:2024年01月18日

1. 求数组中最大最小值

思路

把数组中下标为0的值,先设置为最大(最小值),然后遍历数组,如果比它大(小)就更新。

代码

ElementType Max( ElementType S[], int N )
{
    ElementType maxNum=S[0];
    for(int i = 1;i<N;i++)
        if(maxNum<S[i])
            maxNum=S[i];
    return maxNum;
}

2. 计算阶乘

思路:

使用递归,把大问题分解为小问题

代码:

int Factorial(int n){
    if(n==0)
        return 1;
    return n*Factorial(n-1);
}

3. 得到数字的每一位

思路

通过不断的模以10,然后再除以10,不断循环,可以把得到每一位存放到数组里面(灵活处理)。

代码

// 一种表达
while(number){
      array[number%10]++;  //使用辅助数组记录每个位出现的次数
      number/=10;
    }
    
// 存放每一位在数组中
while(number){
      array[i++]=number%10;  //使用辅助数组记录每位
      number/=10;
    }

// 判断某一位出现了几次
 while(number){
        if(number%10==D)
            count++;
        number/=10;
    }
文章来源:https://blog.csdn.net/m0_49635911/article/details/135659418
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。