關(guān)于算法的時間復(fù)雜度很多都用包含O(logN)這樣的描述铺坞,但logN的底數(shù)究竟是多少呢袍辞。
算法中l(wèi)og級別的時間復(fù)雜度都是由于使用了分治思想,這個底數(shù)直接由分治的復(fù)雜度決定。
如果采用二分法,那么就會以2為底數(shù),三分法就會以3為底數(shù),其他亦然办悟。
不過無論底數(shù)是什么,log級別的漸進意義是一樣的躬厌。
也就是說該算法的時間復(fù)雜度的增長與處理數(shù)據(jù)多少的增長的關(guān)系是一樣的。
我們先考慮O(logx(n))和O(logy(n))狠裹,x!=y虽界,我們是在考慮n趨于無窮的情況。
求當n趨于無窮大時logx(n)/logy(n)的極限可以發(fā)現(xiàn)涛菠,極限等于lny/lnx莉御,也就是一個常數(shù),也就是說俗冻,在n趨于無窮大的時候礁叔,這兩個東西僅差一個常數(shù)。所以從研究算法的角度log的底數(shù)不重要迄薄。