博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法整理
阅读量:4307 次
发布时间:2019-06-06

本文共 1000 字,大约阅读时间需要 3 分钟。

1.冒泡排序

$arr = array(5,2,6,2,3,1);

for($i=0;$i<count($arr);$i++){
for($j=count($arr);$j>$i;$j--){
if($arr[$i]>$arr[$j-1]){
$b = $arr[$i];
$arr[$i] = $arr[$j-1];
$arr[$j-1] = $b;
}
}
}

2.快速排序,

取一个值,比他大的放一边,小的放一边,再取一个值,同样对比。递归

function kspx($arr){

//快速排序
$num = count($arr);
$jz = $arr[$num-1];
if($num<=1){
return $arr;
}else{
$arrs = array();
$arrss = array();
for($i=0;$i<$num-1;$i++){
if($arr[$i]>$jz){
$arrs[] = $arr[$i];
}else{
$arrss[] = $arr[$i];
}
}
$x = array();
$d = array();
if($arrs){
$d = kspx($arrs);
}
if($arrss){
$x = kspx($arrss);
}
return array_merge($d,array($jz),$x);
}
}
$arr = array(8,5,6,1,2,3,4,15,6,31,25,7);
$res = kspx($arr);
var_dump($res);

3.不用第三个变量替换两个值

$a
=
"This is A"
;
// a变量原始值
$b
=
"This is B"
;
// b变量原始值
echo
'交换之前 $a 的值:'
.
$a
.
', $b 的值:'
.
$b
,
'<br>'
;
// 输出原始值
list(
$b
,
$a
) =
array
(
$a
,
$b
);
// list() 函数用数组中的元素为一组变量赋值。了解这个,相信其他的不用我多说了吧
echo
'交换之后 $a 的值:'
.
$a
.
', $b 的值:'
.
$b
,
'<br>'
;
// 输出结果值

转载于:https://www.cnblogs.com/mengzhilva/p/10750045.html

你可能感兴趣的文章
OpenGL ES 3.0(九)实现美颜相机功能
查看>>
FFmpeg 的介绍与使用
查看>>
Android 虚拟机简单介绍——ART、Dalvik、启动流程分析
查看>>
原理性地理解 Java 泛型中的 extends、super 及 Kotlin 的协变、逆变
查看>>
FFmpeg 是如何实现多态的?
查看>>
FFmpeg 源码分析 - avcodec_send_packet 和 avcodec_receive_frame
查看>>
FFmpeg 新旧版本编码 API 的区别
查看>>
RecyclerView 源码深入解析——绘制流程、缓存机制、动画等
查看>>
Android 面试题整理总结(一)Java 基础
查看>>
Android 面试题整理总结(二)Java 集合
查看>>
学习笔记_vnpy实战培训day02
查看>>
学习笔记_vnpy实战培训day03
查看>>
VNPY- VnTrader基本使用
查看>>
VNPY - CTA策略模块策略开发
查看>>
VNPY - 事件引擎
查看>>
MongoDB基本语法和操作入门
查看>>
学习笔记_vnpy实战培训day04_作业
查看>>
OCO订单(委托)
查看>>
学习笔记_vnpy实战培训day06
查看>>
回测引擎代码分析流程图
查看>>