
排序算法
主要介绍常规算法,并做总结
太阳与尼采
这个作者很懒,什么都没留下…
展开
-
排序算法总结(三)归并排序
原理: 1、把当前序列平分为两个子序列,i,j分别指向两个 序列的头部 2、递归地对子序列进行递归 3、把排序好的子序列再合并成一个有序的序列 代码: #include <iostream> #include <unistd.h> #include <sys/wait.h> #include <algorithm> #include <stri...原创 2020-04-06 22:13:22 · 131 阅读 · 0 评论 -
排序算法总结(二)快速排序
快速排序的实现原理基本思想lomuto实现 原理 基本思想 选基、分割、递归 选基:选择基准值 分割:小于基准值的放在基准值前面,大于基准值的放在基准值后面 递归:对于小于基准值和大于基准值的子序列进行递归排序 lomuto实现 #include <iostream> using namespace std; //#define BEBUG void swap(int arr[],...原创 2020-03-31 22:48:18 · 101 阅读 · 0 评论 -
排序算法总结(一)堆排序
堆排序 要点 建堆 堆调整: 堆调整 总体原则“从下向上,从右往左”,调整内部不仅要调整当前节点,还要调整分支的子节点 实现 #include <iostream> using namespace std; void swap(int arr[], int i, int j) { int tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp;...原创 2020-03-31 22:47:13 · 113 阅读 · 0 评论