《选择排序在链表中的实现图解ppt课件.ppt》由会员分享,可在线阅读,更多相关《选择排序在链表中的实现图解ppt课件.ppt(40页珍藏版)》请在三一文库上搜索。
1、l,p,q,m,n,4,16,2,1,5,8,6,temp1,p=l;q=l-next;,m=p-next; n=q-next; temp1=m;,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,进入外循环,l,p,q,m,n,4,16,2,1,5,8,6,temp1,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,m=temp1;n=temp1-next;,进入内循环,l,p,q,m,n,4,1
2、6,2,1,5,8,6,temp1,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,if(temp1-next-datadata ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,条件:最小点n后移的条件是比基准点小,还要比n本身小,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,if(temp1-next-datadata ,l,p,q,m,n,4,16,2,1,5,8,6,tem
3、p1,l,p,q,m,n,4,16,2,1,5,8,6,temp1,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,l,p,q,m,n,4,16,2,1,5,8,6,temp1,l,p,q,m,n,4,16,2,1,5,8,6,temp1,temp1=temp1-next;,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,l,p,q,m,n,4,16,2,1,5,8,6,temp1,l,p,q,m
4、,n,4,16,2,1,5,8,6,temp1,temp1=temp1-next;,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,l,p,q,m,n,4,16,2,1,5,8,6,temp1,l,p,q,m,n,4,16,2,1,5,8,6,temp1,temp1=temp1-next;,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,l,p,q,m,n,4,16,2,1,5,8,6,temp1
5、,l,p,q,m,n,4,16,2,1,5,8,6,temp1,temp1=temp1-next;,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,l,p,q,m,n,4,16,2,1,5,8,6,temp1,跳出内循环,继续外循环,if(m!=p-next | (m=p-next ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,if(m!=p-next | (m=p-next ,基准点的前一个节点指向最小点,l,p,q,m,n,4,16,2,1,5,8,6,temp1,if(m
6、!=p-next | (m=p-next ,p后移,l,p,q,m,n,4,16,2,1,5,8,6,temp1,最小点的前一个节点指向基准点,if(m!=p-next | (m=p-next ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,m后移,if(m!=p-next | (m=p-next ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,基准点下移,if(m!=p-next | (m=p-next ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,最小点下移,if(m!=p-next | (m=p-next ,l,p,q,m,n,4,16,
7、2,1,5,8,6,temp1,被基准点指向的现在由最小点指向,if(m!=p-next | (m=p-next ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,被最小值指向的现在由基准点指向,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,l,p,q,m,n,4,16,2,1,5,8,6,temp1,完成交换,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,顺序结构展示,if(m!=p-next | (m=p-next /被最小值指向的现在
8、由基准点指向 ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,退出外循环,再次进入外循环,if(temp1-next-datadata ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,退出外循环,再次进入外循环,if(temp1-next-datadata ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,退出外循环,再次进入外循环,if(temp1-next-datadata ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,退出外循环,再次进入外循环,if(temp1-next-datadata ,l,p,q,m,n,1,16,2
9、,4,5,8,6,temp1,退出外循环,再次进入外循环,if(temp1-next-datadata ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,退出外循环,再次进入外循环,if(temp1-next-datadata ,l,p,q,m,n,1,16,2,4,5,8,6,temp1,退出外循环,再次进入外循环,if(m!=p-next | (m=p-next ,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next ,基准点的前一个节点指向最小点,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (
10、m=p-next ,p后移,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next ,最小点的前一个节点指向基准点,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next ,m后移,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next ,基准点下移,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next ,最小点下移,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next ,
11、被基准点指向的现在由最小点指向,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,被最小值指向的现在由基准点指向,l,p,q,m,n,1,16,2,4,5,8,6,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,完成交换,l,p,q,m,n,1,2,16,4,5,8,6,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,顺序结构展示,l,p,q,m,n,1,2,4,16,5,8,6,if(m!=p-next | (m=p-next /被
12、最小值指向的现在由基准点指向 ,完成剩下的交换,l,p,q,m,n,1,2,4,5,16,8,6,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,完成剩下的交换,l,p,q,m,n,1,2,4,5,6,8,16,if(m!=p-next | (m=p-next /被最小值指向的现在由基准点指向 ,完成剩下的交换,q始终指向基准点,p始终指向基准点的前一个节点 n始终指向最小点,m始终指向最小点的前一个节点 temp1则作为扫描指正,扫描基准点以后的整个链表,l,p,q,m,n,1,2,4,5,6,8,16,完成剩下的交换,else p=p-next; q=q-next; ,m=p-next; n=q-next; temp1=m;,