• 数据结构与算法


                  一 算法分析:是理论研究,是关于计算机程序性能和资源利用的研究,特别关注性能。

        在程序设计方面,什么是比性能更重要的呢?

            例如:正确性,简洁,可维护性,成本,稳定性,软件的健壮性,特性(功能性),模块化(只需要修改局部的代码,避免修改全部代码,以便于影响功能中的简单变化),安全性,可扩展性,用户体验(为什么人们更青睐于苹果OS而不是Windows?)

        以上提到的问题都比性能更加重要,如果算法和性能都不重要?为什么我们还要学习呢?

            第一个层面的原因:通常情况下性能的好坏,直接决定着可行还是不可行,例如,对于实时的需求,如果程序不够快,就只能表示它不可行,或者如果它占用过多的内存,也只能表示它不可行,所以,算法总是处于解决问题的最前沿,如果你正在实现的是十几年前人们已经实现的事,那么从某种意义上来说,性能就不那么重要,但是如果你正在积极尝试其他人没有成功的事情,之所以别人没有成功,是因为太消耗时间,不具备可扩展的空间,那么程序的性能就显得十分重要,算法能够将不可行变成可行。

            第二个层面的原因:算法是一种描述程序行为的语言,其实它也已经形成了一种语言,一种已经广泛应用于计算机科学领域,已经被所有实践者所采用的理论语言,它是一种让程序最为简洁的思考方式,性能所扮演的角色,就如同经济中的货币一样,可能水和食物的作用比钞票更加重要,但是,你仍然需要用钞票去购买,同样的,性能是确保良好的用户体验的前提,也是安全的保障,这就是为什么性能处于最底层的原因。

            第三个层面的原因:算法充满了乐趣,我们为什么喜欢跑车,赛马......?因为速度是我们最原始的渴望!

  • 相关阅读:
    [导入]匹配正则表达式的函数BOOL型(修正一下)
    [导入]得到当前网页文件名(不含路径)的小函数,如果有效率更高的请回帖评论
    [导入]约瑟夫环VC2005
    [导入]《菊花台》的歌词LRC文件
    [导入]一段不太好的代码:IE主页不是本站地址就不充许访问或下载
    [导入]ALASTART.EXE木马清除
    [导入]编程意识
    [导入]人若其名
    vueresource安装与使用
    com复合文档存储及持久化
  • 原文地址:https://www.cnblogs.com/vczh/p/5246195.html
Copyright © 2020-2023  润新知