test.cpp

来自「C、C++语言实现的数据结构重要算法和程序 比较全。」· C++ 代码 · 共 57 行

CPP
57
字号
#include<iostream.h>
#include<stdlib.h>
#include"D:\vc_h_file\SeqList.h"
#include"D:\vc_h_file\queue.h"

void PrintList(SeqList<int> *L)
{
	int i,n;
	n=L->Size();
	for(i=0;i<n;i++)
	{
		cout.width(6);
		cout<<L->GetData(i);
		if((i+1)%10==0)
			cout<<endl;
	}
}

void Sorter(SeqList<int> *L) 
{
	int i,kind,item,n=L->Size();
	int base=1,flag;
	Queue<int> digitQ[10];
	while(1)  
	{
		flag=0;
		for(i=0;i<n;i++)  
		{
			item=L->GetData(i); 
			kind=item/base;
			if(kind!=0)  
				flag=1;    
			kind=kind%10;
			digitQ[kind].Insert(item);
		}
		if(flag==0)
			break;
		L->Clear();
		for(i=0;i<10;i++)
			while(!digitQ[i].Empty())
				L->Insert(digitQ[i].Delete());
		base=base*10;
	}
}          

void main(void)
{
	SeqList<int> L(50);
	for(int i=0;i<50;i++)
		L.Insert(rand()%10000);
	cout<<"original list:"<<endl;
	PrintList(&L);
	Sorter(&L);
	cout<<"sorted list:"<<endl;
	PrintList(&L);
}

⌨️ 快捷键说明

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