📄 sort_counting.cpp
字号:
#include <fstream.h>
#include "data.h"
//计数排序
void Counting_sort(int a[])
{
int *b,*Temp;
int i;
Temp=new int[Nvalue]; //以下为在内存中申请两个工作区
if(!Temp)
{
cout<<"内存空间申请失败"<<endl;
return;
}
b=new int[number];
if(!b)
{
cout<<"内存空间申请失败"<<endl;
return;
}
for(i=0;i<Nvalue;i++) //对计数数组初始化
Temp[i]=0;
for(i=0;i<number;i++) //统计各值的元素的个数
Temp[a[i]]=Temp[a[i]]+1;
for(i=1;i<Nvalue;i++) //统计小于或等于i的元素的个数
Temp[i]=Temp[i]+Temp[i-1];
for(i=number-1;i>=0;i--)
{
b[Temp[a[i]]-1]=a[i];
Temp[a[i]]=Temp[a[i]]-1;
}
for(i=0;i<number;i++)
a[i]=b[i];
delete Temp;
delete b;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -