排序
排序算法
叶卡捷琳堡
单纯,善良,丰富,美好
展开
-
C++堆排序---创建最大堆类实现堆排序
文章目录创建最大堆类堆排序方法完整代码,使用随机数生成要排序的数创建最大堆类class Maxheap{private: //存放元素的堆数组 int* heap; //数组的空间长度 int arrayLength; //数组中元素的个数 int heapSize; //扩容数组的函数 void changeLength(int*& old, int oldLength, int newLength) { if (oldLength <= newLength)原创 2021-02-09 23:03:20 · 180 阅读 · 0 评论 -
C++快速排序
快速排序排序数的个数,范围由用户指定,具体的数随机生成代码:#include<iostream>#include<ctime>using namespace std;void swap(int index1, int index2, int* array){ int temp = array[index1]; array[index1] = array[index2]; array[index2] = temp;}int pivotIndex(int begi原创 2021-02-11 14:52:57 · 198 阅读 · 0 评论 -
C++归并排序
用户指定要排序的数的范围和个数,进行归并排序代码:#include<iostream>#include<ctime>using namespace std;static int* leftArray;//合并void merge(int begin, int mid, int end, int* array){ //左边数组的索引 int li = 0; //左边数组最右边的索引 int le = mid - begin; //右边数组的索引 int ri原创 2021-02-11 14:47:44 · 216 阅读 · 0 评论 -
排序——希尔排序
希尔排序由插入排序改编而来,以间隔g进行插入排序#include<iostream>using namespace std;void insertSort(int A[], int N, int g) { for (int i = g; i < N; i++) { int v = A[i]; int j = i - g; while (A[j] > v && j >= 0) { A[j + g] = A[j]; j原创 2021-07-11 14:49:21 · 66 阅读 · 0 评论 -
冒泡排序,选择排序,插入排序,随机生成100个数并保存到数组中
1.随机生成范围在1-100的数,并保存到数组中#include<iostream>#include<ctime>using namespace std;int main() { //time()用系统时间初始化种。为rand()生成不同的随机种子。 srand((unsigned)time(NULL)); int* array = new int[10]; for (int index = 0; index < 10; index++) { //范围原创 2021-01-17 16:44:36 · 4354 阅读 · 0 评论 -
箱子排序---设计链表类完成箱子排序
链表类class ChainNode{public: //元素 int element; //下一个节点 ChainNode* next; //空构造函数 ChainNode() {} //包含元素的构造 ChainNode(const int& element) { this->element = element; } ChainNode(const int& element, ChainNode* next) { this->elemen原创 2021-02-10 11:34:10 · 156 阅读 · 0 评论