算法设计与分析学习总结
通过对《算法设计与分析》这门课的学习,似乎对算法有了一定的了解,之前对算法并没有太多的接触,只是一些普通的编程。选课的时候,觉得特别有意思,就选了这门课,通过学习各类算法,有了一定的认识。递归法,分治法,蛮力法,回溯法。贪心算法等等,对之后的编都有很大的帮助。
现在,我深刻的明白这门课的对软件工程专业的重要性,程序的编写都离不开它,对培养思维能力也有一定的帮助,还能培养我们思考分析、解决问题的能力。对于一个问题,运用不同的算法都会有不同的解决方法,空间复杂度和时间复杂度都不太相同,合适的算法能更加高效,更加便捷的完成问题。算法可以用自然语言,伪代码,流程图等来描述,各种程序设计,软件设计,数据库设计,系统设计归根到底都要用算法来完成。
在课堂上,老师讲的各种方法,虽说有一些不太理解,经过课后的学习,也有了一定的认识,结合课后作业,每一题都是对每一种算法针对性的练习,巩固了所学知识。因为专业所学的编程语言就是java,所以都是运用Java语言来实现的,对其他语言没有去深入了解,应该也都是差不多的解决问题。现阶段学习到的都是算法的一些皮毛,之后会继续深入学习,体验其中的奥妙。
接下来是一些方法的理解,其中包括课堂学过的各种方法。
**递归法:**能采用递归描述的算法通常有这样的特征:为求解规模为N的问题,设法将它分解成规模较小的问题,然后从这些小问题的解方便地构造出大问题的解,并且这些规模较小的问题也能采用同样的分解和综合方法