首页  >  问答  >  正文

c++ - log(x)的时间复杂度是多少?

我写的一段机器学习的代码中添加了一些功能,其中涉及到了计算信息熵,其中计算信息熵需要计算log(x),然后代码执行起来非常慢,因为这段代码中涉及到了大量的对数运算,我想知道计算机在计算log(x)的时间复杂度是多少?

迷茫迷茫2715 天前619

全部回复(3)我来回复

  • PHP中文网

    PHP中文网2017-04-17 13:48:07

    http://stackoverflow.com/questions/7317414/what-is-the-complexity-of-the-log-function

    TLDR: 现代处理器有CPU指令直接计算对数,一般我们说时间复杂度实际上说的都是CPU指令数,所以是O(1)(固定指令数量)

    回复
    0
  • PHPz

    PHPz2017-04-17 13:48:07

    难道不是 O(1) ?

    回复
    0
  • PHPz

    PHPz2017-04-17 13:48:07

    O(1) 罢,只不过 常数略大

    回复
    0
  • 取消回复