V
主页
京东 11.11 红包
代码随想录刷题 | Day 6 | 202 快乐数
发布人
本题的时空复杂度分析(generate by Chatgpt) 时间复杂度 最坏情况时间复杂度:在这段代码中,时间复杂度的主要因素是外层和内层的while循环。外层循环的次数取决于n何时达到1或者何时开始循环。对于大多数实际的输入,已知的循环都不长(例如,对于32位整数,最大的循环长度小于1000),因此可以近似认为这个循环的时间复杂度是一个常数时间复杂度,我们可以标记为O(1)。但这个常数实际上取决于n的大小和它达到1或循环的路径。 内层循环:对于一个数字n,其位数d可以近似表示为log10(n)。因此,内层循环的时间复杂度可以认为是O(log n)。这里的对数底数是10,因为我们是按照十进制来分解n的。在计算时间复杂度时,通常忽略对数的底数,因此我们可以简单地表示为O(log n)。 综上所述,整体时间复杂度可以近似看作是O(logn),这里主要考虑到了内层循环对数字位数的处理。 空间复杂度 空间复杂度:主要由用于存储中间结果的HashSet决定。在最坏的情况下,如果n不是一个快乐数,这个集合可能会存储直到找到循环为止的所有中间结果。然而,由于已知的循环长度对于32位整数是有限的,这个空间复杂度可以被视为常数空间复杂度,标记为O(1)。但这个常数大小取决于n达到循环或1所需的唯一中间结果的数量。 综合考虑,这段代码的时间复杂度近似为O(logn),空间复杂度为O(1)。需要注意的是,这里的分析基于数字大小和已知快乐数循环的特性,实际的时间和空间复杂度可能因具体情况而异。
打开封面
下载高清视频
观看高清视频
视频下载器
代码随想录刷题 | Day 9 | 28. 实现strStr()
代码随想录刷题 | Day 7 | 18 四数之和
代码随想录刷题 | Day 8 | 151 反转字符串中的单词(2)
代码随想录刷题 | Day 8 | 151 反转字符串中的单词(3)
代码随想录刷题 | Day 9 | 459. 重复的子字符串
代码随想录刷题|Day 1 | 34 在排序数组找到元素的首尾位置(1)
代码随想录刷题 | Day 8 | 541 反转字符串II
代码随想录刷题 | Day 8 | 344 反转字符串
代码随想录刷题 | Day 7 | 383. 赎金信
代码随想录刷题 | Day 11 | 1042. 删除字符串中的所有相邻重复项
每日一题 | 1608. 特殊数组里的特征值
代码随想录刷题 | Day6 | 349 两个数组的交集
代码随想录刷题|Day1 | 35 搜索插入位置
每日一题 | 846. 一手顺子
代码随想录刷题|Day 7 | 454 四数相加2
代码随想录刷题 | Day 3 | 707 设计链表
代码随想录刷题|Day3 | 203 移除链表元素
代码随想录刷题 | Day 4 | 19 删除链表倒数第N个节点
代码随想录刷题|Day 7 | 15. 三数之和
每日一题 | 2486. 追加字符以获得子序列
公基天天刷题79,送资料
一数必刷100讲2025版开箱+初体验
代码随想录刷题 | Day 14 | 102. 二叉树的层序遍历
每日一题 | 409. 最长回文串
代码随想录刷题 | Day 14 | 迭代法:二叉树的前/中/后序遍历
LeetCode 347. Top K Frequent Elements
一个视频速通一数资料怎么用高效快速提分明显|高中必看|亲测有效
代码随想录刷题|Day4 | 24 两两交换链表中的节点
代码随想录刷题|Day1 | 34 排序数组中元素的首尾位置(2)
准初三不要干的joker行为
6点早起学 逢人就说考不上 夜夜学习到天亮||“6:30起床,22点睡觉,早上醒来不看手机,退出所有娱乐平台,学习效率保持,无论多忙也要午休30分钟
LeetCode 141. 环形链表
每天进步一点点,日常知识积累138
代码随想录刷题 | Day 13 | 239. 滑动窗口最大值
【408专题强化课|数据结构】全年真题精讲,强化阶段无脑跟!
Blind75 | Array | LeetCode 271. Encode & Decode Strings
备考408还不知道怎么二轮强化?【独家】408真题专题强化更新预告,无脑跟就完事了!轻松吃透真题,快速搭建知识点框架,稳上100分!
公基天天刷题81,送资料
两年前农学研究生退学的我怎么也想不到会在吉隆坡的酒店里写代码