Time 如何知道所需的计算时间?

Time 如何知道所需的计算时间?,time,Time,我正在做一个项目,想知道是否有一种方法可以粗略估计完成该过程所需的时间。 我对需要多少次操作的估计非常糟糕,大约在10^70到10^100之间。我知道,数量巨大,我几乎可以肯定我的电脑不会在短时间内完成。(或永远)。我怎样才能知道要花多长时间。(对于任何项目来说,这更像是一个例子)有这么多操作的东西肯定是通过东西循环的,可能是以多级嵌套的方式 如果可以找到任何循环的运行时间,请将其乘以循环次数以得到答案 假设一个循环有10^10个操作,或100亿个操作。假设这需要10分钟。好的,你可以从这里开始

我正在做一个项目,想知道是否有一种方法可以粗略估计完成该过程所需的时间。
我对需要多少次操作的估计非常糟糕,大约在10^70到10^100之间。我知道,数量巨大,我几乎可以肯定我的电脑不会在短时间内完成。(或永远)。我怎样才能知道要花多长时间。(对于任何项目来说,这更像是一个例子)

有这么多操作的东西肯定是通过东西循环的,可能是以多级嵌套的方式

如果可以找到任何循环的运行时间,请将其乘以循环次数以得到答案


假设一个循环有10^10个操作,或100亿个操作。假设这需要10分钟。好的,你可以从这里开始计算。

你可以找到关于这个主题的解释得很好的材料。这是相应书籍章节的简短版本(“算法第四版”,罗伯特·塞吉威克和凯文·韦恩合著,章节“算法分析”)。

根据经验,现代计算机应该能够在几秒钟内完成10^8或10万个更复杂的运算

所以,如果你的程序是竞争性的,就不应该超出这个范围

此外,这只是一个经验法则,速度慢的计算机可能会做得更糟,而芯片(设计用于采矿)可以做得更快。
这仍然是一个很好的经验法则

我知道很多,但我正在寻找“10^10=10毫秒”的最佳估计值。如果不在给定的计算机上实际运行它,这很难说,因为它们的速度和功率差异很大。我的意思是在你的程序中隔离一个循环,以获得一个基线(小到足以在合理的时间内运行,但大到足以提高你最终估计的准确性)。发布参考链接很好,但包括一个相关的简介,以便参考被取消参考,后来进来的人还有一些信息要说。更新了我的答案。