用数根思想解决single number的思路
数根的定义已经知道,回顾第一条定理:任何数加9的数字根还是其本身。
就是说,一个数n的数根不会因为加9而发生改变。这里实际上有个条件n是保持正整数.0的数根为0;
考虑单个数直接是数根,所以我们把所有数用N*9+n来表示,这样从定理出发,把一个正整数k拆成N*9+n(最大的N)
有了n=k%9 当n>0时,numRoot=n;n就是k的数根;
当n=0时,也就是k=9、18、27等数,numRoot=9;
这就是利用数根知识解决这个问题思路。
置于numRoot=(k-1)%9+1 是对上面式子进行的合并优化。