- 题目链接
- 本题中,将快慢指针抽象了两个数
slow
每次变化一次,fast
每次变化两次,即可达到"快慢指针"效果
- "快慢指针"在此题中,用于判环
- 由于两"指针"速度并不一样,在快指针总是会追上慢指针的
class Solution {
public:int BitSum(int n){int sum = 0;while(n){int tmp = n % 10;sum += tmp * tmp;n /= 10;}return sum;}// 本题将双指针的"指针"抽象成了两个数bool isHappy(int n) {int slow = n, fast = n;while((slow = BitSum(slow)) != (fast = BitSum(BitSum(fast))));return slow == 1;}
};