学习笔记(本周刷题的记录截图在仓库中,一起推了上来)
本周特殊情况说明:因为这周周中的时候,学校实验室突然开始催项目进度,所以本周的题目基本是周六晚上才用很快的速度过了一遍,没有之前的细致,而且困难的题目选择了跳过,因为情况比较突然,不过后面会补上来,做题的原则是课程中出现的一道不落
学习心得:
1.本周最大的收获是在DFS和BFS上,之前对这两个算法的理解仅仅是认为他们是出现在图的遍历上的,通过做题发现这是两种思想,DFS就类似于递归,认准一条路先一口气走到底,或者是手动维护一个stack也是一样,对于BFS来说就需要手动维护一个队列,先把当前的所有可能都试一下,对于非递归的BFS来说(只能是非递归的,递归实际上就是一个stack),为了突出层的思想,因为是一层一层的处理问题,所以写法就像102二叉树的层序遍历和之前N叉树的层序遍历上
2.第二大的收获体现在二分法上,之前基本上自己没写过二分法,属于一想就会,一写就错的状态,现在有了模板之后,如果是在有序的线性结构中进行处理的话,就考虑二分法,上来直接写模板
3.对于贪心算法,这部分内容的学习是在周六晚上进行的,所以很仓促,做题目的时候属于大概知道怎么想,但是还是不会写,看了题解之后恍然大悟,连呼牛逼
补充:特殊情况已和班班报备,本来预计是只推上来几道题,但是昨晚还是肝到十二点多才回宿舍,但是实在是事出突然,所以这周的学习质量远不如前几周,后面等学校项目的进度稳定下来之后,会补上来的,毕竟东西是给自己学的,进步只有自己知道,我明显能感到自己的代码能力以及对c++ api的熟练程度与四周前判若两人
冲!!!!
还是想吐槽一句:甲方的需求真的离谱,项目要验收为什么要临时加需求呢???