算法
文章平均质量分 78
深思沉浮
这个作者很懒,什么都没留下…
展开
-
【算法】学习笔记(二)----快速排序的深入理解
快速排序的深入理解:学习自视频:6-1 快速排序的基本思想_哔哩哔哩_bilibili算法验证:912. 排序数组 - 力扣(LeetCode)减而治之:逐渐缩小解决问题的规模采用随机划分的优点:注意:以上代码过不了全是一样数字的样例。特殊情况:数组中有很多元素值相同,partition前交换元素可能交换前后没有区别,使用随机划分也不能很好的处理由此产生了以下两种快速排序:代码示例:三路快速排序:三路快排有计算机科学家Dijkstra发明三路快排优点:代码示例:循环不变量原创 2023-04-04 21:19:53 · 141 阅读 · 0 评论 -
十大排序(C++版)
冒泡排序、 选择排序、 插入排序、希尔排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序原创 2023-03-04 19:46:26 · 524 阅读 · 1 评论 -
清晰理解并解决二分问题
二分问题常规解法、使用C++STL自带算法解决二分问题、小数二分原创 2023-02-13 20:06:16 · 1000 阅读 · 2 评论 -
【算法】学习笔记(一)----数组元素的目标和
暴力解法:使用vector加上map解法:使用unordered_map后做法:使用双指针做法:原创 2022-10-19 20:54:03 · 305 阅读 · 0 评论 -
BP算法(暴力枚举、朴素模式匹配)和KMP算法(代码求next数组和nextval数组)
BP算法(暴力枚举、朴素模式匹配算法)算法的思路是从s的每一个字符开始依次与t的字符进行匹配。每次结束原字符串从i-j+1开始,比较字符串从0开始#define MAXLEN 255typedef struct{ char ch[MAXLEN]; int length; }SString;int Index(SString S, SString T){ int i=1; //扫描主串S int j=1;原创 2022-05-31 18:01:09 · 445 阅读 · 0 评论