
排序
东篱_
Never forget why you started,and your mission can be accomplished.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ 快排思想 最小的k个数、最大的k个数
C++ 快排思想 最小的k个数、最大的k个数 1、思路 快速排序的思路中,有一个分块函数partition. partition函数,以升序数组a[]为例,它的作用: 以a[l]为基准,将“<a[l]”的数据全部存放在 a[l]的左边,“>a[l]”的数据全部存放在 a[l]的右边。返回a[l]最终所在数组的正确索引位置。 采用双路快排,从数组的两端开始,向中间推进。 故:最小...原创 2018-08-28 16:51:32 · 1437 阅读 · 0 评论 -
C++ 模板化的student类对象的直接插入排序, 运算符重载,模板,两种模板化的交换数据函数
C++ 模板化的student类对象的直接插入排序, >、<、<<运算符重载,模板,两种模板化的交换数据函数 1、student类对象 (1)基本成员变量和成员函数定义: class student{ private: string name; double score; int *index; public: student() :index(NU原创 2018-11-28 17:49:51 · 637 阅读 · 0 评论 -
堆排序、堆排序优化、索引堆排序
堆排序、堆排序优化、索引堆排序(稳定排序) 1、堆: 所有元素 都从索引0开始 父亲结点索引:i; 左孩子结点索引: 2*i+1; 右孩子结点索引: 2*i+2; 左后一个非叶子结点索引:(n-1)/2; 用于构建堆,从最后一个非叶子结点索引开始调整堆,直至到达索引为0的首个父亲结点 2、堆排序(升序为例): 共两步: step1、构建堆 step2、原地堆排序 step1...原创 2018-09-01 15:20:37 · 1277 阅读 · 0 评论 -
归并排序 逆序对的实现
归并排序 逆序对的实现 #include<iostream> using namespace std; long long mergeSort(int a[], int n); long long _mergeSort(int a[], int l, int r); long long merge(int a[], int l, int mid, int r); void t...原创 2018-08-23 22:04:05 · 381 阅读 · 0 评论 -
单链表的直接插入排序
单链表的直接插入排序 1、数组的直接插入排序 void InsertSort(int *a, int len) { for (int i = 1; i < len; ++i) { for (int j = 0; j < i; ++j) { if (a[j]>a[i]) { ...原创 2018-05-21 22:07:36 · 4622 阅读 · 0 评论