美文网首页
算法 用看的见单位来衡量时间复杂度

算法 用看的见单位来衡量时间复杂度

作者: 某非著名程序员 | 来源:发表于2020-11-29 09:11 被阅读0次

    工作也有些年限了,发现学习算法的同事真的不多,对时间复杂度只是一个模糊的概念。今天就谈谈具体能衡量的单位。

    1.iOS手机1s能计算多少次呢?

    写个for循环就能验证

    func testTime() {
            for i in 0..<2000000 {
                
            }
            print("运算完成了")
        }
    
    Test Case '-[WPALG_Tests.Test493reversePairs testTime]' passed (1.072 seconds).
    

    结论:iOS模拟器,大约200万/s左右

    2.两个常用的复杂度衡量单位:o(n2)与o(nlogn)

    假如数据量在50000左右:
    1. o(n2)大概就是2500000000,要跑12.5s
    2. o(nlogn)大概就是540988,要跑0.25s

    总结

    1. 了解时间复杂度n到底是什么,同时手机的具体运行次数,也了解nlogn与n的之间的差距。
    2. 对手机或电脑的计算能力有个大致了解。

    相关文章

      网友评论

          本文标题:算法 用看的见单位来衡量时间复杂度

          本文链接:https://www.haomeiwen.com/subject/lsihwktx.html