百科问答小站 logo
百科问答小站 font logo



有哪些见过的时间复杂度为无限大的算法? 第1页

  

user avatar   Caproner 网友的相关建议: 
      

在算法的五个性质中就有一个有限性。

1. 输入:一个算法必须有零个或以上输入量。
2. 输出:一个算法应有一个或以上输出量,输出量是算法计算的结果。
3. 明確性:算法的描述必须无歧义,以保证算法的實際执行结果是精確地符合要求或期望,通常要求實際執行結果是确定的。
4. 有限性:依據圖靈的定義,一個演算法是能夠被任何圖靈完備系統模擬的一串運算,而圖靈機只有有限個狀態、有限個輸入符號和有限個轉移函數(指令)。而一些定義更規定演算法必须在有限個步骤内完成任務。
5. 有效性:又称可行性。能够实现,算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现。

【以上引用自Wikipedia:算法 - 维基百科,自由的百科全书

换言之,如果有一个时间复杂度为无穷大的程序的话,那它严格地讲就不是算法了。。

从这个角度回答的话,不存在时间复杂度为无穷大的算法。


当然,存在最坏情况会到正无穷但是平均情况下是有穷的算法。

例如说猴子排序

最坏情况的时间复杂度为O(+∞),期望时间复杂度为O(n*n!)

不过按照定义来看,猴子排序算不算满足有限性还是个问题。。




  

相关话题

  既然国外的 IT 巨头有能力推出自研发的语言,为什么国内的巨头们没有这种热情呢? 
  有个人说C++程序入口是mainCRTStartup,另一个人说是main,然后打起来了,如何评理? 
  Android 会像 Windows 一样,打败 iOS 吗? 
  有线鼠标会被无线鼠标取代吗? 
  fopen()的第二个参数为什么会采用字符串形式? 
  为什么 C++ 的开源库看起来那么头大? 
  为什么c/cpp语言的函数好像没有按照驼峰命名法呢? 
  印度经济为何跳过轻重工业的发展阶段,直接进入软件业这种高大上行业? 
  31 省区市 2020 年平均工资出炉,信息传输、软件和信息技术服务业排前三,还有哪些信息值得关注? 
  备战ACM,想问下有什么算法网课推荐吗? 

前一个讨论
什么是「红卫兵思维」?
下一个讨论
关于 C++ 顶层 const 和底层 const?





© 2025-06-07 - tinynew.org. All Rights Reserved.
© 2025-06-07 - tinynew.org. 保留所有权利