数据结构与算法:极客时间-王争

894 阅读1分钟

1. 练习链表数据结构推荐的LeetCode中的题目

image.png

2. 练习栈数据结构推荐的LeetCode题目

image.png

3.递归的学习关键点是找到递归公式和终止条件

image.png 将大问题变为类似的小问题

3.排序算法

  1. 排序算法中有冒泡排序,插入排序,选择排序(选择排序是选择一个无序一边的最小值在放入有序的那边的前面),归并排序 这里记录下归并排序,归并排序中的合并过程中的A[i++],不好理解,这里要区分++i和i++,(可以自行百度)

image.png 这里贴一个讲解视频 www.bilibili.com/video/BV1Pt… 快速排序同样的讲解十四这个up主 www.bilibili.com/video/BV1bz…

  1. 这里up主中评论区修复了一个指针越界问题, 这个问题我们可以举例子,当pivot是最小,左边全是大于他的当执行完while(arr[++i]< pivot)后开始执行j中的while循环,while会一直递减,当j=0的时候还是大于pivot将会执行--j这时候出现了j=-1会指向其他内存中的数据。(比如9 4 3 2 1)就会越界

  2. 计数排序 image.png 这里计数排序解决了其不稳定的问题 这里贴马士兵的桶排序

www.bilibili.com/video/BV1Wb… www.bilibili.com/video/BV1Nb…

还有他的基数排序

4.二分查找

二分查找中的所有对应的变形练习题,还有最后一个思考题

image.png