?? linkradixsort.cpp
字號:
////////////////////////////
// 基于靜態(tài)鏈的基數(shù)排序 //
////////////////////////////
#include "iostream.h"
#include "stdlib.h"
#include "string.h"
#include "Node.h"
#include "Compare.h"
#include "LinkRadixSorter.h"
// 設(shè)定隨即函數(shù)的種子
inline void Randomize()
{ srand(1); }
//返回一個0到n-1之間的隨機數(shù)
inline int Random(int n)
{ return rand() % (n); }
void main()
{
//產(chǎn)生隨機數(shù)組,長度為100
Randomize();
Node* sortarray=new Node[100];
for(int i=0;i<100;i++)
sortarray[i].key=Random(100);
for (i=0; i<100; i++) // 建鏈,初始為next域指向下一個記錄
sortarray[i].next = i+1;
sortarray[99].next = -1; //鏈尾next為空
//實例化基于靜態(tài)鏈的基數(shù)排序類
LinkRadixSorter<Node> sorter;
cout<<"排序前:";
cout<<endl;
sorter.PrintArray(sortarray, 0); //輸出原始序列
//排序
int first=sorter.Sort(sortarray,100,2,100);
cout<<"排序后:";
cout<<endl;
sorter.PrintArray(sortarray, first); //輸出排好序后的結(jié)果
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -