php数据结构之简单选择排序
2010-11-29 17:12
232 查看
<?php
$array = array(13,15,6,10,20,6,3,19);
$count = count($array);
$n = $e = 0;
for($i = 1; $i < $count; $i++)
{
//find the min item from $i to last
$min_index = $i;
for($j = $i+1; $j < $count; $j++)
{
$n++;
if($array[$j] < $array[$min_index]) $min_index = $j;
}
if($array[$min_index] < $array[$i-1])
{
$e++;
$tmp = $array[$i-1];
$array[$i-1] = $array[$min_index];
$array[$min_index] = $tmp;
}
}
print_r($array);
echo "共循环{$n}次,共执行{$e}次数据交换";
?>
执行结果为:
Array ( [0] => 3 [1] => 6 [2] => 6 [3] => 10 [4] => 13 [5] => 15 [6] => 19 [7] => 20 )
共循环21次,共执行5次数据交换
$array = array(13,15,6,10,20,6,3,19);
$count = count($array);
$n = $e = 0;
for($i = 1; $i < $count; $i++)
{
//find the min item from $i to last
$min_index = $i;
for($j = $i+1; $j < $count; $j++)
{
$n++;
if($array[$j] < $array[$min_index]) $min_index = $j;
}
if($array[$min_index] < $array[$i-1])
{
$e++;
$tmp = $array[$i-1];
$array[$i-1] = $array[$min_index];
$array[$min_index] = $tmp;
}
}
print_r($array);
echo "共循环{$n}次,共执行{$e}次数据交换";
?>
执行结果为:
Array ( [0] => 3 [1] => 6 [2] => 6 [3] => 10 [4] => 13 [5] => 15 [6] => 19 [7] => 20 )
共循环21次,共执行5次数据交换
相关文章推荐
- 数据结构复习笔记:使用PHP实现内排序之冒泡排序和简单选择排序
- php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
- PHP学习(十一)--数组与数据结构
- PHP数据结构之实现栈
- PHP实现的栈数据结构示例【入栈、出栈、遍历栈】
- PHP数据结构(1) 二分查找
- PHP数据结构与算法:栈
- PHP数据结构之八 树与二叉树基本概念
- 【数据结构】PHP实现查找表
- PHP SPL标准库之数据结构双链表(SplDoublyLinkedList)
- PHP 数据结构 算法描述 冒泡排序 bubble sort
- 10-8-简单选择排序-内部排序-第10章-《数据结构》课本源码-严蔚敏吴伟民版
- php SPL四种常用的数据结构
- 数据结构 --- 线性表学习(php模拟)
- PHP基础补全系列:SPL(数据结构)
- PHP代码:基本数据结构和php内置函数
- PHP数据结构之三 线性表中的单链表的PHP实现
- 【C#数据结构】简单选择排序
- PHP数据结构之五:栈的PHP的实现和栈的基本操作