- 博客(5)
- 收藏
- 关注
原创 快速排序
排序算法 —— 快速排序(quick sort)推荐可视化网页:visualgo, sorting.at, usfca, youtube.快速排序算法分三步:取pivot,并将数组分成大于pivot和小于pivot两部分,并且小于pivot的部分在pivot左边,大于的在右边。对每边分别进行快速排序(递归)。将排序好的部分合起来。Lomuto partition scheme每次...
2020-03-15 05:32:29 123
原创 leetcode 10
leetcode 10 (Hard)leetcode 原题: regular-expression-matchingGiven an input string sss and a pattern ppp, implement regular expression matching with support for ‘...’ and ‘∗*∗’.'...'Matches any singl...
2020-03-13 06:35:02 74
原创 归并排序
排序算法 —— 归并排序(Merge Sort)推荐可视化网页:visualgo, sorting.at, usfca, youtube.归并排序:(空间换取时间)归并排序过程如图,先将list拆分成长度为1的小块,再将小块排序组合起来。归并过程中,每个小块在归并之前都已经排好序,所以只需要线性时间复杂度进行归并,但需要额外消耗两个小块长度的空间。时间复杂度:O(Nlog(N))O(Nl...
2020-03-12 06:20:37 71
原创 插入排序 & 选择排序
排序算法 —— 插入排序 & 选择排序推荐可视化网页:visualgo, sorting.at, usfca, youtube.插入排序:每次将当前位置nums[index]前的sublist看成已排序好的,将nums[index]插入到sublist中合适的位置。时间复杂度: O(N2)O(N^2)O(N2)最好情况:顺序,只需遍历一遍最坏情况:逆序衍生:TreeSortp...
2020-03-12 05:22:21 99
原创 冒泡排序
排序算法——bubble sort(冒泡排序)推荐可视化网页:visualgo, sorting.at, usfca, youtube.时间复杂度:O(n2)O(n^2)O(n2)最好情况:顺序,遍历一遍即可。最坏情况:逆序java 实现:public void bubbleSort(int[] nums) { boolean swap = true; for (int...
2020-03-12 04:38:57 279
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人