⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sort.cpp

📁 快速排序、合并排序、插入排序、堆排序、计数排序等算法的C语言实现
💻 CPP
字号:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include"CountingSort.h"
#include"InsertionSort.h"
#include"LinkList.h"
#include"MergeSort.h"
#include"Heap.h"
#include"QuickSort.h"
#define OK 1

void main()
{
	ElemType A[20],B[20],i,LengthA;
	time_t t;
	clock_t start1,finish1,start2,finish2,start3,finish3,start4,finish4;
	double duration1,duration2,duration3,duration4;
	srand((unsigned)time(&t));



	//以下为各种排序比较
	start1=clock();
	for(i = 0;i < 20;i++)
	{//初始化数组
		A[i] = rand() % 30;
	}
	LengthA = sizeof(A) / sizeof(int);
	CountingSort(A,B,LengthA);
	for(i=0;i<20;i++)
	{
		printf("%d ",A[i]);
	}
	printf("\n");
	for(i=0;i<20;i++)
	{
		printf("%d ",B[i]);
	}
	//QuickSort(A,0,99999);
	finish1=clock();

	/*start2=clock();
	for(i = 0;i < 100000;i++)
	{//初始化数组
		A[i] = rand() % 100000;
	}
	LengthA = sizeof(A) / sizeof(int);
	HeapSort(A,100000);
	finish2=clock();

	start3=clock();
	for(i = 0;i < 100000;i++)
	{//初始化数组
		A[i] = rand() % 100000;
	}
	LengthA = sizeof(A) / sizeof(int);
	InsertionSort(A,LengthA);
	finish3=clock();

	start4=clock();
	for(i = 0;i < 100000;i++)
	{//初始化数组
		A[i] = rand() % 100000;
	}
	LengthA = sizeof(A) / sizeof(int);
	MergeSort(A,0,99999);
	finish4=clock();

	duration1 = (double)(finish1 - start1) / CLOCKS_PER_SEC;
	duration2 = (double)(finish2 - start2) / CLOCKS_PER_SEC;
	duration3 = (double)(finish3 - start3) / CLOCKS_PER_SEC;
	duration4 = (double)(finish4 - start4) / CLOCKS_PER_SEC;
	printf("Time of QuickSort is %fseconds\nTime of HeapSort is %fseconds\nTime of InsertionSort is %fseconds\nTime of MergeSort is %fseconds\n",duration1,duration2,duration3,duration4);
*/
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -