排序------快速,插入,选择,冒泡
来源:互联网 发布:淘宝产品文案怎么写 编辑:程序博客网 时间:2024/06/05 11:28
快速排序/数组快速排序 先取出数组第一个 把每个和它比较,比它小的放在l数组,大的放r数组,一直比较,最后合到一个数组/*function kuaisu($a){ $c=count($a); if($c<=1){ return $a; } $l=$r=array(); for($i=1;$i<$c;$i++){ if($a[$i]<$a[0]){ $l[]=$a[$i]; }else{ $r[]=$a[$i]; } } $l=kuaisu($l); $r=kuaisu($r); return array_merge($l,array($a[0]),$r);}$m=array(1,7,3,2,5,0);//echo kuaisu($m);print_r(kuaisu($m)) ;*/
插入排序 先找一个数进行比较,如果前一个比后一个大 ,调换位置
function charu($a){ $c = count($a); for($i=1;$i<$c;$i++){ $t = $a[$i]; for($j=$i;$j>0 && $a[$j-1]>$t;$j--){ $a[$j] = $a[$j-1]; } $a[$j] = $t; } return $a;}$m=array(1,7,3,2);print_r(charu($m));或者function charu($a){ $c = count($a); for($i=1;$i<$c;$i++){ $t = $a[$i]; for($j=$i;$j>0;$j--){ if($a[$j-1]>$t){ $a[$j] = $a[$j-1]; $a[$j-1] = $t; } } //$a[$j] = $t; } return $a;}
选择排序//选择排序 第1趟,在待排序记录r[1]~r[n]中选出最小的记录,将它与r[1]交换;第2趟,在待排序记录r[2]~r[n]中选出最小的记录,将它与r[2]交换;以此类推/*初始序列:{ 49 27 65 97 76 12 38 }第1趟:12与49交换:12 { 27 65 97 76 49 38 }第2趟:27不动 :12 27 { 65 97 76 49 38 }第3趟:65与38交换:12 27 38 { 97 76 65 49}第4趟:97与49交换:12 27 38 49 { 97 76 65 }第5趟:76与65交换:12 27 38 49 65 { 97 76 }第6趟:97与76交换:12 27 38 49 65 76 97 完成*//*function xuanze($a){ $c = count($a); for($i=0;$i<$c;$i++){ for ($j=$i+1;$j<$c;$j++){ if($a[$i]>$a[$j]){ $t = $a[$j]; $a[$j] = $a[$i]; $a[$i] = $t; } } } return $a;}$m=array(1,7,3,2);print_r(xuanze($m));
冒泡 从后往前
比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。[1function maopao($a){ $c = count($a); for($i=0;$i<$c;$i++){ for ($j=$c-1;$j>$i;$j--){ if($a[$j]<$a[$j-1]){ $t = $a[$j-1]; $a[$j-1] = $a[$j]; $a[$j] = $t; } } } return $a;}
0 0
- 冒泡、插入、选择、快速排序
- 冒泡,快速,选择,插入排序
- 排序------快速,插入,选择,冒泡
- 插入排序 冒泡 选择 快速
- 冒泡、快速、选择、插入、排序
- 冒泡、选择、快速排序、插入排序
- 插入,冒泡,选择,快速排序,二分查找
- 算法--排序(冒泡,选择,插入,快速)
- 排序总结(冒泡、选择、插入、快速)
- 算法--排序(冒泡,选择,插入,快速)
- c++ 数组排序(选择, 冒泡, 插入,快速)
- Objective-C 冒泡 选择 插入 快速排序
- c++实现冒泡,选择,插入,快速排序
- 排序(冒泡、选择、插入、快速)
- c++ 数组排序(选择, 冒泡, 插入,快速)
- 冒泡、选择、插入、归并、快速排序代码
- 排序算法(冒泡、选择、插入、快速)
- java插入,希尔,快速,冒泡,选择排序
- MulLine.js 使用说明
- Java开发中的‘暗坑’
- 拍照图片方向
- 聊一聊ThreadLocal
- 仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器
- 排序------快速,插入,选择,冒泡
- linux stat函数使用
- 欢迎使用CSDN-markdown编辑器
- ProgressDialog的setCancelable()相关,
- windows系统出现2个相同的盘符
- GitHub上排名前10的Objective-C 项目及其常用方法
- App Store审核被拒的23个理由
- Leap Motion 之Unity 开发实战(一. 制作手的HandController)
- android gps hal