python php 选择排序

#!/usr/bin/python

def select_sort(li):#循环列表依次拿出最小的值将值放在第一个位置
	for i in range(len(li)-1): #最后一个数肯定是最大或者最小 不需要比较 所以循环次数减少1
		min_loc = i #假设列表第一个数为最小数
		for j in range(i+1,len(li)): #循环无序列表 i+1表示不和自己比较 无序列表的长度是逐渐缩短的
			if li[j] < li[min_loc]: #将无序列表的第一个数和有序列表的第一个数进行比较 小于则是进行升序 大于则是降序
				min_loc = j #将列表中的下标进行更换
		li[i],li[min_loc] = li[min_loc],li[i] #以下标的形式将数值进行更换

#时间复杂度为 O(n^2)


__________
//选择排序 PHP
//选择排序
function select_sort($li)
{
	$li_lenght = count($li);
	
	for ($i=0; $i < $li_lenght-1; $i++) { 
		$min_local = $i;
		//echo $min_local;
		echo $li[$min_local];
		for ($j=$i+1; $j < $li_lenght; $j++) { 
			if ($li[$min_local] < $li[$j]) { //如果拿出来的值小于循环的值 则将拿出来的值索引和比较的值换
				$min_local = $j;
			}
		}
		// echo $j;
		// echo $min_local;
		$temp = $li[$min_local]; //将值进行互换
		$li[$min_local] = $li[$i];
		$li[$i] = $temp;
	}
	 var_dump($li);
}
$li = [1,0,3,4,2,9,7,8,5];
//$li = [1,2,3,4,5,6,7,8,9];
select_sort($li);

原文地址:https://www.cnblogs.com/ikai/p/11599673.html