我是靠谱客的博主 健忘大侠,最近开发中收集的这篇文章主要介绍各位相加,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

给出一个非负整数 num,反复的将所有位上的数字相加,直到得到一个一位的整数。

样例

给出 num = 38。

相加的过程如下:3 + 8 = 111 + 1 = 2。因为 2 只剩下一个数字,所以返回 2

class Solution {
public:
    /**
     * @param num a non-negative integer
     * @return one digit
     */
    int addDigits(int num) {
        // Write your code here
        if (num < 10)
            return num;
        else
        {
            int result = 0;
            while (num / 10 != 0)
            {
                result += num % 10;
                num = num / 10;
            }
            result += num % 10;
            addDigits(result);
        }
    }
};

这是一种比较简单的方法,题目还有另一个要求,不使用循环或递归进行计算,正在思考。。。

可以参考http://blog.csdn.net/xy010902100449/article/details/49046199

最后

以上就是健忘大侠为你收集整理的各位相加的全部内容,希望文章能够帮你解决各位相加所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部