数据结构论坛

首页 » 分类 » 常识 » 数据结构与算法之美学习笔记
TUhjnbcbe - 2020/11/13 6:31:00

基础知识就像是一座大楼,它决定了我们技术的高度。而要想快速做点事情,前提条件一定是基础能力过硬,“内功”要到位。

操作系统、计算机网络、编译原理、数据结构与算法等

入门

为什么要学习数据结构与算法

业务开发过程中,会用到各种框架,中间件和底层系统。这些基础框架中,一般都柔和了很多基础数据结构和算法的设计思想。

掌握数据结构和算法,不管对与阅读框架源码,还是理解其背后的设计思想,都是非常有用的

对编程有追求,不想被行业淘汰,不想写凑合能用的代码,写出性能好的代码。

掌握了数据结构与算法,看待问题的深度,解决问题的角度会完全不一样。

抓住重点,系统高效的学习数据结构与算法

什么是数据结构?什么是算法

数据结构就是指一组数据的存储结构。算法就是操作数据的一组方法。

数据结构是为算法服务的,算法作用在特定的数据结构之上。

掌握一个数据结构与算法中最重要的概念--复杂度分析

不要死记硬背,不要为了学习而学习,而是要学习它的“来历”自身的特点“适合解决的问题”以及“实际的应用场景”。

学习技巧

边学边练,适度刷题(刷题:leetcode)

多问、多思考、多互动:找几个人一起学习,相互讨论切磋,有问题及时寻求老师答疑

打怪升级学习法:在枯燥的学习过程中,给自己设立一个切实可行的目标。

知识需要沉淀,不要试想一下子掌握所有:学习知识的过程是反复迭代,不断沉淀的过程。遇到”拦路虎“时,可以先沉淀一下,过几天再重新学习一般。所谓,书读百遍其义自现。

复杂度分析

如何分析、统计算法的执行效率和资源消耗?

时间复杂度

不用具体的测试数据进行测试,就可以粗略地估计算法的执行效率方法

大O复杂度表示法:实际上并不具表示代码真正的执行时间,而是表示代码执行时间随数据规模增长的变化趋势,也叫做渐近时间复杂度,简称时间复杂度。

1
查看完整版本: 数据结构与算法之美学习笔记