php算法大全(3)选择排序法
【欢迎关注、分享、点赞或评论,您的一个举手之劳,便是最大的鼓励!
】
欢迎关注【php在路上】每天进步一点。

码字不随意马虎,尊重版权,转载请注明出处:头条号 / PHP在路上。
序言
上一节我们谈论了利用冒泡排序让差生排队,这次我们利用其余一种办法排队-选择排序。
内容概要
1、什么是选择排序。
2、选择算法的动画图。
3、选择算法的PHP代码实现。
一、什么是选择排序。
书接上回。
老师不满意(对不起初生,剧情须要):你们换一种办法排队,班长,你来帮他们。
选择排序法
学生随机排序,位置标号为:ABCDE;一定要记住,这是位置的标号。
班长先问排在第一位A的同学,你多少分?然后,问出第二个同学B的分数,如果分数比第一个少的话,就让第二个同学与第一个同学互换位置;否则连续问第三位C的同学,如果第三位C同学比第一位A少的话,互换位置,否则连续……,如此一轮,第一位A位置排好了。
接着为第二位B,你的分数多少?然后问第三位C的分数,如果C位置同学分数少的话,互换位置,否则连续……如此一轮,第二位B的位置排好了。
……
这样经由5-1=4轮的讯问成绩和互换位置,顺序就排好了。
也便是说:在要排序的一组数中,选出最小的一个数与第一个位置的数交流。然后在剩下的数当中再找最小的与第二个位置的数交流,如此循环到倒数第二个数和末了一个数比较为止。这个排序的方法就叫做选择排序法。
二、选择算法的动画图。
和冒泡排序法的例子一样,我们假设ABCDE位置上的成绩分别是30, 49, 15, 21, 19;看下面的仿照动画。
选择排序法实现差生排队
三、选择算法的PHP代码实现
我们和上期一样,将学生布局成一个索引数组,个中索引表示值表示位置,数组元素是学生的成绩。
代码献丑如下:
选择排序法示例代码
运行结果我就不贴出来了,比较大略。
我在代码里加入了注释(实在我平时是不这么注释的),大家该当可以看懂,这里就赘述了。
虽然这些算法比较大略,估计大家看其他的资料也可以看懂,这里是我学习时的想法,能影象得良久,口试基本不用复习这些基本算法,写出来供大家参考。
不知道我是否写明白了,如果大家看明白了,请回答:666;
如果没有,请评论指出不敷,多谢。