第三章学习小结

这一章学习了栈和队列
栈学习了它的基本操作:初始化,入栈,出栈,取栈顶元素。值得注意的一点是用链表存储方式的话,指针是指向上一个节点的,老是忘记。例子如括号匹配。
然后学了递归,和栈类似也是先进后出,核心思想是“分而治之”,是从问题顶层分解到底层的思想,与之相对的是迭代,它是自底向上分析计算的。递归代码较简单,但运算效率较低,因为数据大时会重复运算相同的数据;迭代代码较复杂,运算效率较大。递归例子:阶乘函数如二阶fibonacci数列求和,n阶Hanoi塔问题。链表数据结构也类似递归。
接着学了队列。操作有初始化,求队列长度,入队,出队,取对头元素。先进先出。

期间有一次团队合作打代码,过程挺顺利的,每人都有事做,都提出自己的想法解决了问题,印象最深刻的是节省很多时间的pringf和scanf,它们比cin,cout快,在数据大的时候明显,想起以前搜过的cin是会先内部存储然后cout读取再打印,而printf scanf没有这存取读取过程所以快点。可以在超时情况下作为一种解决方法。

posted @ 2020-04-26 00:06  flag在哪里  阅读(104)  评论(0编辑  收藏  举报