前言
数据结构与算法 是我们在学习任何一种程序语言后,都要修习的一门学科,掌握数据结构与算法才能使你写出的程序语言具备灵魂,因此它是程序的内功。
一、数据结构与算法的重要性
1、它的重要性除了上述的之外,还与你的面试 有关,现在一些大厂例如:腾讯、阿里、百度、字节等等,面试都会有【算法题 】,掌握数据结构与算法也是进入这些大厂的关键。
2、我本人是学习嵌入式 的,当时开始学单片机裸机 开发的时候,并没有遇到数据结构与算法的问题,随着后面学习的深入,不断会出现数据结构与算法的影子,特别是在学习RT-Thread操作系统 的时候,关于进程、消息队列、信号等等,用了大量的链表和队列的知识,当时看的我一脸懵逼,这时候我才明白,数据结构与算法是门必修的知识,掌握了它,自己才能更进一步。
二、关于修习这门功课的看法
1、有人会问,是先学【数据结构 】,还是先学【算法 】,我认为一起学最好,因为两者相辅相成 。
2、关于它的学习,我认为可以先掌握最基础 的东西,然后在后面的日子里不断练习,因为我觉得它不是一门速成的学科,这需要我们不断的练习中提升。
3、学习这门课前,我建议你最好学习一门计算机程序语言 ,像C语言、java、python。。 ,因为这样可以让你在学习过程中,将数据结构与算法用语言实现,而且像java、C、python 本身在网站上都有实现数据结构与算法的大量资源与资料,不会的时候可以搜,而且还可以锻炼你的语言使用能力。
4、我是一个算法菜鸟,数据结构也才基本掌握,所有下面的学习文章,是我在学习的过程中的学习笔记,讲的都是基础,麻烦的我大多都跳过,写的不好请见谅,想要花出时间专门去学习数据结构与算法的,我推荐CSDN上的大佬,英雄从哪里出来 ,他是这方面的大佬,有着十多年的算法经验,特别强。 5、最后我想说,无论这门学科你是自学也好,还是有人带你学习,都需要花时间去不断的练习,你的程序功底才能变好,并且你的逻辑思考能力 也得到较好的提升。
三、学习链接
以下的文章中,全是用C语言 实现
【数据结构与算法】程序内功篇一–导论
【数据结构与算法】程序内功篇二–线性顺序表
【数据结构与算法】程序内功篇三–单链表
【数据结构与算法】程序内功篇四–栈
【数据结构与算法】程序内功篇五–队列
【数据结构与算法】程序内功篇六–树
【数据结构与算法】程序内功篇七–查找与排序
不定时更新。。。
|