码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • LeetCode 202 快乐数


    今天再次做到需要int转化成String,从而方便运算的题目。(当然还可以直接使用int运算也是没问题的)

    再次出现了我容易弄混淆的问题,Integer.valueOf和ASCII码转化的差异?

    其实之前我以及有记录过该问题,详见我的博客

    Integer.valueOf()用于字符和字符串的区别_paypayphone的博客-CSDN博客

    举个例子:

    Integer.valueOf("1")得到的是1,

    而Integer.valueOf('1')得到的是49,是他的ASCII码。

    这就好比,我们可以直接用字符进行加减,int add = '1' + 'a'; 等于他们的ASCII码之和,他们其实并没有经历强制转化;但是我们没办法将字符串进行加减,只能进行拼接!

    1. class Solution {
    2. boolean result = false;
    3. public boolean isHappy(int n) {
    4. dfs(n,1);
    5. return result;
    6. }
    7. public void dfs(int n, int count) {
    8. if(n == 1) {
    9. result = true;
    10. return;
    11. }
    12. if(count == 10000) {
    13. return;
    14. }
    15. String s = "" + n;
    16. int squareSum = 0;
    17. for(int i=0;i
    18. squareSum += (s.charAt(i)-'0')*(s.charAt(i)-'0');
    19. // squareSum += Integer.valueOf(s.charAt(i)+"") *
    20. //Integer.valueOf(s.charAt(i)+""); //也是一样的效果
    21. //前者是通过ASCII码相减,转化成int,后者是直接将字符串应用于Integer.valueOf
    22. }
    23. count++;
    24. dfs(squareSum, count);
    25. }
    26. }

    然后说回方法本身,我的方法是循环到10000次如果得不到1就自动停止递归,并且用了比较占内存空间的字符串类型。

    其实更应该直接使用int计算squareSum,并且充分理解题意;从而实现用哈希集合检验是否是无限循环。

  • 相关阅读:
    代码随想录刷题|LeetCode 1143.最长公共子序列 1035.不相交的线 53. 最大子序和 动态规划
    浅议信息系统控制在企业中的应用(lunwen+开题报告)
    SpringBoot 整合Nacos配置中心
    PyTorch的安装与使用
    数一满分150分总分451东南大学920电子信息通信考研Jenny老师辅导班同学,真题大纲,参考书。
    SI3262—高度集成的低功耗SOC读卡器芯片
    1069 The Black Hole of Numbers
    用Flask快速生成报表
    Spring Cloud Stream函数式编程整合消息中间件
    固态硬盘删除的资料能恢复吗?
  • 原文地址:https://blog.csdn.net/weixin_43582743/article/details/133581993
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号