试编写以单链表为存储结构实现直接选择排序的算法。
试编写以单链表为存储结构实现直接选择排序的算法。
【正确答案】:void LinkedList—Select_Sort(LinkedList&L)//单链表上的直接选择排序算法 {for(P=L;p一>next一>next;p=P一>next) {q=P一>next;x=q一>data; for(r=q,s=q;r一>next;r=r一>next)//在q后面寻找元素值最小的结点 if(r一>next一>datanext一>data;s=r;} if{s!=q}//找到了值比q一>data更小的结点s一>next {P一>next=s一>next;s一>next=q; t=q一>next;q一>next=P一>next一>next; P一>next一>next=t;}//交换q和s一>next两个结点 }//for }//LinkedList_Select_Sort
Top