经过两个多月的算法学习,主要分两类收获,一方面是算法训练思想的学习,另一方面是算法内容,从这两个方面总结如下: 算法学习思路: 1.五毒神掌:即五遍刷题法。这是老师不厌其烦不停重复的内容,因此既然老师重复强调,这说明其重要性。这是自认为本门课程中最重要的思想之一,题目不能只做过一次就算完成,要在不同的时间阶段复习题目。因为每进行一遍编写,不仅会加深对题目的算法思路,同时也会联想到其他题目,并产生新的想法,或者会对算法有系统的总结和提炼,这是一遍所达不到的效果。 2.学习其他人的优秀写法:因为算法学习不仅仅是算法解题思路的学习,同时也是编码能力的训练,自己一个人的思想终归是有限的,只有不停地学习其他人的写法,才能提高自己的编码能力。 3.找重复子问题:这个也是老师在将每个课程时候不停地重复的内容,所以这也是算法的核心。算法就是将实际中的问题利用计算机去解决,而计算机的特点就是快速重复,因此要把实际问题更好地使用计算机去解决,就是将问题分解为重复子问题,然后利用计算机的优势去解决它,这就是算法的意义。因此算法的本质就是找重复子问题的过程。 算法内容方面: 1.体系地将数据结构和算法进行梳理训练一遍,从而在对算法有了一个体系地了解,遇到算法题目会有根据地进行分析。 2.数据结构分为一维数据结构和二维数据结构,一维数据结构有数组,链表,队列,栈,双端队列等。二维数据结构有树,树的特例二叉树,二叉树的特例平衡二叉树,AVL树,红黑树等 3.算法思想主要有递归,递归的变种分治回溯,贪心算法,动态规划,以及数据结构的遍历算法广度优先算法,深度优先算法等。 算法内容方面在任何地方都能看到,最主要地收获是算法训练思想地学习,因为科学的学习方法才会提高学习效率,从而有时间学习更多地内容。这是本次算法训练营最大地收获。
Activity
[-]【0185 毕业总结】[/-][+]【0185-毕业总结】[/+]