countsort.cpp

来自「计数排序是一个非基于比较的线性时间排序算法。它对输入的数据有附加的限制条件: 」· C++ 代码 · 共 35 行

CPP
35
字号
#include<iostream.h>

int main()
{
	int size,*oldarray,*newarray,i,j,c;
	cout<<"请输入待排序对象个数:"<<flush;
	cin>>size;
	oldarray=new int [size];//储存待排序对象,在全部排好序好被撤销
	newarray=new int [size];//储存排序后的对象
	cout<<"请输入各排序对象,以空格隔开(各对象不可相等):"<<endl;
	for(i=0;i<size;i++)
		cin>>oldarray[i];
	cout<<"计数排序前,各数相对位置为:"<<endl;
	for(i=0;i<size;i++)
		cout<<oldarray[i]<<" ";
	cout<<endl;

    for(i=0;i<size;i++)
	{	c=0;
		int temp= oldarray[i];
		for(j=0;j<size;j++)
		{if (oldarray[j]<temp)
		 c++;
		}	
		newarray[c]=temp;
	}
	delete[] oldarray;
	
	cout<<"计数排序后,各数相对位置为:"<<endl;
	for(c=0;c<size;c++)
		cout<<newarray[c]<<" ";
	    cout<<endl;
	return 0;
}

⌨️ 快捷键说明

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