PHP(冒泡,快速,选择,插入)排序
来源:互联网 发布:守望先锋的性能数据 编辑:程序博客网 时间:2024/06/06 00:57
<?php
$arr=array(6,3,8,6,4,2,9,5,1);
//冒泡排序
function Bubble($arr)
{
$length = count($arr);
for($i=0;$i<$length-1;$i++)
{
for($j=0;$j<$length-1-$i;$j++)
{
if($arr[$j]>$arr[$j+1])
{
list($arr[$j],$arr[$j+1]) = [$arr[$j+1],$arr[$j]];
}
}
}
return $arr;
}
function quick($arr)
{
$length=count($arr);
if($length<=1)
{
return $arr;
}
$left=$right=array();
for($i=1;$i<$length;$i++)
{
if($arr[$i]<$arr[0])
{
$left[]=$arr[$i];
}else{
$right[]=$arr[$i];
}
}
$left = quick($left);
$right = quick($right);
return array_merge($left,array($arr[0]),$right);
}
function Select($arr)
{
$length = count($arr);
for($i=0;$i<$length;$i++)
{
$little = $i;
for($j=$i+1;$j<$length;$j++)
{
if($arr[$little]>$arr[$j])
{
list($arr[$little],$arr[$j]) = [$arr[$j],$arr[$little]];
}
}
}
return $arr;
$array = [1,3,5,4,6,7,2,3,9,8];
$sum = 123;
function Insertsort($array,$sum)
{
//把要插入的数据放到数组第一位
array_unshift($array,$sum);
$length = count($array);
for($i=1;$i<$length;$i++)
{
//取的数组的第二个数
//每次用后面一个数跟前面相比
$val = $array[$i];
for($j=$i-1;$j>=0;$j--)
{
if($val<$array[$j])
{
list($array[$j+1],$array[$j]) = [$array[$j],$array[$j+1]];
}else{
break;
}
}
}
return $array;
}
print_r(Insertsort($array,$sum));
$arr=array(6,3,8,6,4,2,9,5,1);
//冒泡排序
function Bubble($arr)
{
$length = count($arr);
for($i=0;$i<$length-1;$i++)
{
for($j=0;$j<$length-1-$i;$j++)
{
if($arr[$j]>$arr[$j+1])
{
list($arr[$j],$arr[$j+1]) = [$arr[$j+1],$arr[$j]];
}
}
}
return $arr;
}
//print_r(Bubble($arr));
function quick($arr)
{
$length=count($arr);
if($length<=1)
{
return $arr;
}
$left=$right=array();
for($i=1;$i<$length;$i++)
{
if($arr[$i]<$arr[0])
{
$left[]=$arr[$i];
}else{
$right[]=$arr[$i];
}
}
$left = quick($left);
$right = quick($right);
return array_merge($left,array($arr[0]),$right);
}
//print_r(quick($arr));
function Select($arr)
{
$length = count($arr);
for($i=0;$i<$length;$i++)
{
$little = $i;
for($j=$i+1;$j<$length;$j++)
{
if($arr[$little]>$arr[$j])
{
list($arr[$little],$arr[$j]) = [$arr[$j],$arr[$little]];
}
}
}
return $arr;
}
$array = [1,3,5,4,6,7,2,3,9,8];
$sum = 123;
function Insertsort($array,$sum)
{
//把要插入的数据放到数组第一位
array_unshift($array,$sum);
$length = count($array);
for($i=1;$i<$length;$i++)
{
//取的数组的第二个数
//每次用后面一个数跟前面相比
$val = $array[$i];
for($j=$i-1;$j>=0;$j--)
{
if($val<$array[$j])
{
list($array[$j+1],$array[$j]) = [$array[$j],$array[$j+1]];
}else{
break;
}
}
}
return $array;
}
print_r(Insertsort($array,$sum));
阅读全文
0 0
- PHP(冒泡,快速,选择,插入)排序
- 冒泡排序,选择排序,插入排序,快速排序(PHP)
- php 冒泡、选择、插入、快速排序算法
- PHP实现插入、选择、冒泡、快速排序算法(转贴)
- php 冒泡排序,选择排序、插入排序、快速排序
- 排序总结(冒泡、选择、插入、快速)
- 排序(冒泡、选择、插入、快速)
- 排序算法(冒泡、选择、插入、快速)
- 算法排序(冒泡、选择、插入、快速)
- 排序算法(冒泡、快速、选择、插入)
- 排序算法(冒泡、快速、选择、插入)
- 冒泡、插入、选择、快速排序
- 冒泡,快速,选择,插入排序
- 排序------快速,插入,选择,冒泡
- 插入排序 冒泡 选择 快速
- 冒泡、快速、选择、插入、排序
- PHP 实现插入、选择、冒泡、快速排序算法
- PHP实现插入、选择、冒泡、快速排序算法
- 一个异常:java.lang.NoClassDefFoundError
- [笔记分享] [Display] MIPI 协议之PHY
- AR Index
- Make your own Neural NetWork之代码详解上
- ubuntu下安装invidia显卡驱动
- PHP(冒泡,快速,选择,插入)排序
- 滚动条消息(WM_VSCROLL和WM_HSCROLL)
- 今天开始写博客啦~
- IE8及以下版本,兼容rgba颜色的半透明背景
- spring容器和springMVC容器
- 从零开始学_JavaScript_系列(60)——class(1)基本概念
- RPC框架简介
- oracle表字段删除问题
- Coding Index