java之查找数字中位数的速度
kerrycode
阅读:31
2025-02-15 21:57:57
评论:0
我使用两个过程来确定一个数字的位数。
给定 x 是一个 int 值
1.
int digits = ("" + x).length();
2.
int digits = 0;
while(x > 0)
{
digits ++;
x /= 10;
}
为什么第二个过程通常更快?
请您参考如下方法:
将数字转换为字符串与除法算法非常相似,但开销更大,因为它必须创建一个字符串。阅读 source code为 Integer.toString
你会发现一个类似于你的第二个过程的循环。
第二个过程更快,因为第一个过程包括第二个过程!
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。