Maison > développement back-end > tutoriel php > PHP 抉择排序 算法 经典面试题

PHP 抉择排序 算法 经典面试题

WBOY
Libérer: 2016-06-13 12:49:30
original
963 Les gens l'ont consulté

PHP 选择排序 算法 经典面试题

<?php
$unsorted = array();

for ($i = 0; $i < 10; $i++) {
	$unsorted[] = rand(0,1000);
}

print "Unsorted Array. <br />";
print implode(',', $unsorted);

print "<br />";

print "Sorted Array. <br />";
$sort = select_sort($unsorted);
print implode(',',$sort);

/**
	selection sort
	1. 找到数组最小的数
	2. 与第一个数交换
	3. 重复余下的元素
*/
function select_sort ($arr = array()) {
	$min = false;
	$n = count($arr);
	
	for ($i = 0; $i < $n; $i++) {
		$min = $i;
		for ($j = $i + 1; $j < $n; $j++) {
			if ($arr[$j] < $arr[$min]) {
				$min = $j;
			}									
		}
		// $tmp = $arr[$min];  
		// $arr[$min] = $arr[$i];  
		// $arr[$i] = $tmp; 
		list($arr[$min],$arr[$i]) = array($arr[$i],$arr[$min]);
	}

	return $arr;
	
}
Copier après la connexion

?

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal