问题:有一个整数n,写一个函数f(n),返回0到n之间出现的"1"的个数。
算法问题,我的理解考察用程序解决问题的能力,充分体现一个人从代码层面的生产力,这也是程序员赖以生存的基本技能。
解决问题有思路,但是思路有好坏之分。思维深度和效率是一个矛盾。思维难度越小的算法通常执行效率越差,需要综合平衡。
通常程序实现应非常追求效率。
算法一:从0到n,对其中的每个整数x分别做判断,判断x中含有几个整数1,并返回,外层循环将所有的结果加和即可。
public int countOneNumber(int data) { int totalCount = 0; for (int i= 0; i<= data; i++) { totalCount +&#