是否有一个数学公式,我可以在我的Windows计算器中计算我的嵌套循环的时间成本?
从我读到的,我看到像O(n)这样的东西,但我不知道如何把它放在计算器中。
我有一个300级嵌套循环,每个循环级别将从0到1000
所以它就像:
for i as integer =0 to 1000
{
//300 more nested loops, each goes from 0 to 1000
}
我假设1个完整循环将花费1秒(即从最顶部循环到最内循环的300个级别将花费1秒)。
如何确定完成整个循环操作需要多少秒?
谢谢
如果你有M个嵌套循环,每个循环有N个步骤,那么最内部代码运行的总次数是NM。因此,如果此代码执行t秒,则总运行时间将不小于NMt。
在你的情况下,N = 1001,M = 301.因此
NM = 1351006135283321356815039655729366684349803831988739053240801914465955329955010318785683390381893021480038259097571556568393033624125663039020474816807139123124687688667110651554536455554983313531622053666601142890485454586020409971220427023079449603217442510854172465669657551198374621035716253537483681789962979899381794117593366167602159102878741666110186140811771157661856975727227011774938173689257851684515033630838203428990519981303994460521486651131205651440789014004132287034501678194895276766533222238644463714676717122486815519675003623218747516074833762258750872602504763945523812443905022112877989765178585281722001229086777672022301235387486256207147702409003911671750616133700186863997717468027217550738860605995255072363983914048955786591110292838269781981812167453230775137941595147968127169264749956845265384891251656562329411331097495063637387550896404766837508698223985774995150301001。
另外,如果我们假设最内部代码非常快,例如t =1μs,则总运行时间将不小于NMt = 1.35 ...×10897 s。
当宇宙结束时,你的代码将完全接近0.0000000000000000000000000000%,假设当时硬件没有出现故障并且人类文明还没有结束(因此你很难找到电气你需要运行你的硬件的力量)。