算法学习开篇

算法是程序的灵魂,语言只是一种工具,数据结构是载体,因此算法的重要性就不言而喻了,如果你的工作不是算法类相关的话,那么你直接接触到底层的算法怕是不多了,一般我们就停留在使用api上面,如果你使用的是面向对象的话,比如说java语言中,最多知道哪个类适合使用当前的这个需求,然后调用已经封装好的api进行编码,实现需求,那么到底是不是没有这个必要学习算法呢?我的想法是有必要的,如果你想深入你的代码,去探究底层代码的逻辑,想要去优化你的代码的性能,已经想要自己封装一个适合自己的实际场景的算法库的话,有技术追求的话,那么很高兴,祝贺你,算法在等你一步一步去揭开真相,去成为你的编码的利器。

正如上面所说的,编码是要从真实世界定义抽象出数据模型,进行相关的编码,那么算法到底是怎么样定义的呢,用我们自己的话就是,有限,确定的,有效的并适合用程序来解决问题的办法,算法需要合适的组织数据,就是数据结构了,当我们选择我们的算法的时候,如何评判算法是否合适,通过分析,得出性能指标。

本系列文章主要是在阅读Robert Sedgewick的第四版的《算法》的阅读笔记,记录自己的学习,希望自己能坚持下起,希望与君共勉,一起努力,加油

你可能感兴趣的:(算法学习开篇)