d Distribute( Rnode *q,int j) :进行基数排序每一趟的分配函数; void Collect() :进行基数排序每一趟的收集函数; int Search_Bin( (Rnode *q,long int k,int low,int high ); void find( Rnode *q) :二分查找函数; void menu() :菜单函数; void print() :输出所有车辆信息函数; Rnode * RadixSort( Rnode *p) :基数排序函数; -7- 3.4 主算法设计建立链表,添加汽车牌照信息: 对车牌号码进行基数排序: 开始结束申请一结点 p并为其分配内存空间 head=NULL head=p 输入汽车的相应信息,经过相应的处理后存入结点 p相应的域。将该结点按尾插法插入到链表的相应位置返回该链表的头指针 Y N -8- 开始结束 i=M-1 i>=0 调用 Distribute 及 Collect 函数 i++ 遍历排序好的链表将每个车辆的牌照号转换为长整型数据存于一个一维数组 A[MAX] 中。 YN 按车牌号码查询: -9- 开始结束输入需要查找的牌照将待查找的牌照号处理后,存于一整型变量中调用二分查找函数并返回c c=-1 没有查找成功查找成功并输出该车的信息 YN 各函数间的关系: main () Distribute() menu() print() Collect() Setlist() find() R adixSort Search_Bin() - 10- 菜单界面,选择功能: 方案实现 n=1 n=p n=c 调用子函数 S etList(p) 调用子函数 print() 调用子函数 find(p) 调用子函数 paixu(p) n=s Y N Y Y N 开始输入 nN Y n=q N Y 结果 N