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 codeInteger.toString你会发现一个类似于你的第二个过程的循环。

第二个过程更快,因为第一个过程包括第二个过程!


标签:java
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号