📄 sortclass.h
字号:
#pragma once
#include "stdafx.h"
#define MaxLen 1000000
class Allsort
{
public:
Allsort(int num[],int n);
~Allsort();
void PrintData();
void Reset();
void InsertSort(int r[], int n); //直接顺序排序
void BinaryInsertSort(int r[], int n); //折半插入排序
void ShellSort(int r[], int n); //希尔排序
void BubbleSort(int r[], int n); //起泡排序
void QuickSort(int r[], int first, int end); //快速排序
void SelectSort(int r[ ], int n); //简单选择排序
void HeapSort(int r[ ], int n); //堆排序
void RadixSort(int r[ ], int n,int wide1);
void MergeSort1(int r[ ], int r1[ ], int n ); //归并排序的非递归算法
void MergeSort2(int r[], int r1[], int r2[],int s, int t);//归并排序的递归算法
int m_nLen;
int m_nTotalCmp;
int m_nTotalSwap;
//int g_nOriginal[MaxLen+10],g_nFinished[MaxLen+10];
private:
void Distribute1(int r[],int temp[10][MaxLen+10], int n,int wide2);
void Collect1(int r[],int temp[10][MaxLen+10], int n);
void BinaryInsert(int r[], int n); //折半插入
int Partition(int r[], int first, int end); //快速排序一次划分
void Sift(int r[], int k, int m); //筛选法调整堆
void Merge(int r[], int r1[], int s, int m, int t);//一次归并
void MergePass(int r[ ], int r1[ ], int n, int h); //一趟归并
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -