刷题专栏(十五):各位相加

简介: 刷题专栏(十五):各位相加

前言

刷题专栏到目前已经是第十五篇了,欢迎大家来关注我的刷题专栏,一起来刷题。

今天的这道题终于不再是二叉树的题目了。

开始数字相关的题目了,《各位相加》这道题,主要就是考察逻辑方面的能力。

如果你对逻辑的题目感兴趣,或许可以从这道题找到有意思的地方。

一起来看看吧。

image.png

算法题:翻转二叉树

从题目的描述上来看,只是提供了一个正整数。

然后将这个正整数每一位上的数字进行相加,然后得到一个中间值。

然后如果这个中间值不是个位数的话,那么就接着将每一位上的数字进行相加。

直到得到的值是一个个位数时,就将这个数字返回。

在示例中,我们也可以看的出来。

从38,相加后得到一个中间值11。

然后再次进行各位相加,最后得到值2。

代码展示

下面就是这次的代码展示了,主要就是通过数字取余的方式来判定是否继续相加。

逻辑比较简单,只要懂得如何取余,如何将所有的值得到就能完成这道题的解答。

public class Solution {
    public static void main(String[] args) {
        Solution solution = new Solution();
        System.out.println(solution.addDigits(38));
    }
    public int addDigits(int num) {
        while (num >= 10) {
            int s = 0;
            while (num > 0) {
                s += num % 10;
                num /= 10;
            }
            num = s;
        }
        return num;
    }
}

代码执行结果

今天执行的结果很可以,一如既往还是内存占用比较多,大家如果有更好的方案可以评论区讨论一下哈。

image.png

总结

今天的这道题,重在逻辑实现,只要将思绪理清,代码实现不在话下的,加油各位,胜利就在前方。

目录
相关文章
|
1月前
|
存储 编译器 C语言
牛客网刷题笔记小节(二)
牛客网刷题笔记小节(二)
|
5月前
|
算法 Java
刷题专栏(二十三):4的幂
刷题专栏(二十三):4的幂
81 0
|
5月前
|
算法
刷题专栏(十六):丑数
刷题专栏(十六):丑数
34 0
|
5月前
|
算法
刷题专栏(二十二):3 的幂
刷题专栏(二十二):3 的幂
98 0
|
5月前
|
算法 Java
刷题专栏(二十五):有效的完全平方数
刷题专栏(二十五):有效的完全平方数
117 2
|
5月前
|
算法
刷题专栏(二十四):两个数组的交集
刷题专栏(二十四):两个数组的交集
87 0
|
5月前
|
算法
刷题专栏(十七):丢失的数字
刷题专栏(十七):丢失的数字
36 0
|
5月前
|
算法
刷题专栏(三):二进制求和
刷题专栏(三):二进制求和
38 0
|
存储 C++
AcWing语法基础课笔记 第四章 C++中的数组
第四章 C++中的数组 程序 = 逻辑 + 数据,数组是存储数据的强而有力的手段。 ——闫学灿
67 0
|
数据安全/隐私保护 C++
AcWing语法基础课笔记 第五章 C++中的字符串
字符串是计算机与人类沟通的重要手段。 ——闫学灿
81 0