时间复杂度为: o(n)
算时间复杂度,主要看循环的次数。
你上面的程序有两个循环:
while (N!=0)
这循环时间复杂度为n,因为N初始化值为n
后面加一个循环:
for(i=1;i<=bit-1;i++)
时间复杂度为 bit
因为在
while (N!=0){
bit++;
i=N%2;
binary[bit]=i;
N=N/2;
}
中,循环结束时,bit值应与N相等。所以上面的循环复杂度也为0(n)
两个循环并非嵌套,所以总的时间复杂度为:2*O(n)
如果是嵌套的循环则为:O(n的平方)
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。