Tag: 时间复杂度

计算位数 – 哪种方法最有效?

有一种以上的解决方案可以找到给定数字中的数字位数。 例如: 方法1: int findn(int num) { char snum[100]; sprintf(snum, “%d”, num); return strlen(snum); } 方法2: int findn(int num) { if (num == 0) return 1; int n = 0; while(num) { num /= 10; n++; } return n; } 方法-3: int findn(int num) { /* math.h included */ return (int) log10(num) + 1; } […]