关于学习数据结构与算法的一些思考

首先非常感谢杰哥精彩的课堂演绎,带我体会到数据结构与算法的作用,也让我意识到如何去优化代码。

跟着杰哥学习的过程中我自己也总结了一些学习方法:

一、记住数据结构与算法概念 (是什么)

我觉得学习数据结构和算法最基础的是在学完之后要能够给别人讲清楚概念,比如什么是“堆栈”什么是“平衡二叉树”等等,这一步的关键是需要自己理解,然后才可能用语言转述,我也一直在这样练习,慢慢把这些概念变成自己脑子里的长时记忆。

比如:学习哈夫曼树的时候。哈夫曼树的定义:WPL(带权路径长度)最小的二叉树;哈夫曼树的特点:(1)没有度为1的结点(2)n个叶子结点的哈夫曼树共有2n-1个结点(3)哈夫曼树的任意非叶节点的左右子树交换后仍是哈夫曼树。关于“数据结构”,需要记忆的内容也需要自己在其中慢慢领悟。

二、编程练习(怎么做)

杰哥的课实操性是很强的,每次也会留一些作业来做,我基本上都是认认真真完成的,自己在写的过程中也有不一样的体会,结合之前记下的概念,更加深入理解,这一步要求的不仅仅是对概念的理解,也是自己综合能力的锻炼,自己也会慢慢思考形成一些自己的理解,比如:如何用递归解决问题,如何使用循环等等

三、结合场景去思考(思考)

这一步的基本已经到实际应用的阶段了,结合具体的场景,具体的问题去思考,为什么这里要用这种数据结构,这里要实现特定的操作需要什么样的数据结构,怎样去提升效率,每个数据结构的特点解决那些问题合适,哪些是最优解。写的时候多一些思考,慢慢自己的效率提高,代码质量也就提高了。

大概就是这些,一点拙见,希望大家多指点,最后再次感谢杰哥精心准备的课程,望小码哥可以推出更多精品的线上课程,帮助在职程序员更快的提升自己、升职加薪,做更多有价值于意义的工作。

你可能感兴趣的:(关于学习数据结构与算法的一些思考)