当文章/问题声明算法的Big O运行时间为O(LogN)时。
例如,Quicksort的大O运行时间为O(LogN),其中它的对数为10,而二叉树的高度为O(LogN + 1),其中它的对数为2
题
1)我对是以10为底数还是以2为底数感到困惑,因为不同的文章对数使用不同的底数。
2)如果它的对数为2或对数为10,会有所不同吗?
3)当我们看到O(LogN)时,可以假设它的对数为10吗?
我认为日志的基础是什么都没有关系,因为相对的复杂性是相同的,而与所使用的基础无关。
因此,您可以将其视为O(log 2 X)= O(log 10 X)
还要提到对数是由一些常数相关的。
所以
因此,在大多数情况下,我们通常在复杂性分析中不考虑常量,因此我们说基数无关紧要。
您也可能会发现大多数情况下,就像Merge Sort一样,该底数被认为是2 。log₂ n由于节点有两个分支,因此树的高度为。
log₂ n
因此,如上所述,基数的变化无关紧要。
不,没关系。
是的,只要您知道基本转换规则,就可以假设。