算法中logN的底数是多少?

关于算法的时间复杂度很多都用包含O(logN)这样的描述,但是却没有明确说logN的底数究竟是多少?

解答:

算法中log级别的时间复杂度都是由于使用了分治思想,这个底数直接由分治的复杂度决定。
如果采用二分法,那么就会以2为底数,三分法就会以3为底数,其他亦然。
不过无论底数是什么,log级别的渐进意义是一样的。
也就是说该算法的时间复杂度的增长与处理数据多少的增长的关系是一样的。

我们先考虑O(logx(n))和O(logy(n)),x!=y,我们是在考虑n趋于无穷的情况。
求当n趋于无穷大时logx(n)/logy(n)的极限可以发现,极限等于lny/lnx,也就是一个常数,
也就是说,在n趋于无穷大的时候,这两个东西仅差一个常数。
所以从研究算法的角度log的底数不重要。

最后,结合上面,我也说一下关于大O的定义(算法导论28页的定义),
注意把这个定义和高等数学中的极限部分做比较,
显然可以发现,这里的定义正是体现了一个极限的思想,
假设我们将n0取一个非常大的数字,
显然,当n大于n0的时候,我们可以发现任意底数的一个对数函数其实都相差一个常数倍而已。
所以书上说写的O(logn)已经可以表达所有底数的对数了,就像O(n^2)一样。
没有非常严格的证明,不过我觉得这样说比较好理解,如果有兴趣证明,完全可以参照高数上对极限趋于无穷的证明。

已有 8 条评论
  1. FranKap

    Who Can Prescribe Dostinex Cialis Brescia acheter sildenafil 500 Milligrams Of Amoxicillin And Elderly Comprar Alli Adelgazante Online

    FranKap 回复
  2. FranKap

    Online Pharmacy Cost Levitra cialis 20mg price at walmart Uso Del Viagra En Jovenes Cytotec Pills Over The Counter Stendra Pills In Us

    FranKap 回复
  3. Austot

    Cialis Kamagra cialis prices Fedex Levaquin Internet Free Shipping Amex

    Austot 回复
  4. FranKap

    Comprar Cialis En La Farmacia Sin Receta Cialis Modo De Uso Get Wellbutrin Xl No Prescription zoloft 100 mg no script and very cheap Comprar Viagra Espana Farmacia Online Amoxicillin And Leave And Body Bactrim

    FranKap 回复
  5. FranKap

    Viagra Farmacia Madrid Levitra Original Rezeptfrei Viagra Pas Cher Paris cialis 20mg price at walmart Internet Based Drug Stores Allopurinol Long Term Side Effects Buy Kamagrawith American Express

    FranKap 回复
  6. FranKap

    Priligy En Valencia Cialis Viagra Difference

    FranKap 回复
  7. FranKap

    Buy Viagra In Amsterdam viagra online prescription Fedex Shipping Zentel Zithromax Without Prescription Acheter Du Amoxil Generique

    FranKap 回复
  8. Austot

    Pariet On Line Drugs cialis vs viagra Iv Zithromax Order Suhagra Online Online Drugstore

    Austot 回复
发表新评论