<?
//插入排序(一维数组)
function insert_sort($arr){
$count = count($arr);
for($i=1; $i<$count; $i++){
$tmp = $arr[$i];
$j = $i - 1;
while($arr[$j] > $tmp){
$arr[$j+1] = $arr[$j];
$arr[$j] = $tmp;
$j--;
}
}
return $arr;
}
//选择排序(一维数组)
function select_sort($arr){
$count = count($arr);
for($i=0; $i<$count; $i++){
$k = $i;
for($j=$i+1; $j<$count; $j++){
if ($arr[$k] > $arr[$j])
$k = $j;
if ($k != $i){
$tmp = $arr[$i];
$arr[$i] = $arr[$k];
$arr[$k] = $tmp;
}
}
}
return $arr;
}
//冒泡排序(一维数组)
function bubble_sort($array){
$count = count($array);
if ($count <= 0) return false;
for($i=0; $i<$count; $i++){
for($j=$count-1; $j>$i; $j--){
if ($array[$j] < $array[$j-1]){
$tmp = $array[$j];
$array[$j] = $array[$j-1];
$array[$j-1] = $tmp;
}
}
}
return $array;
}
//快速排序(一维数组)
function quick_sort($array){
if (count($array) <= 1) return $array;
$key = $array[0];
$left_arr = array();
$right_arr = array();
for ($i=1; $i<count($array); $i++){
if ($array[$i] <= $key)
$left_arr[] = $array[$i];
else
$right_arr[] = $array[$i];
}
$left_arr = quick_sort($left_arr);
$right_arr = quick_sort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
}
?>
分享到:
相关推荐
在IT领域,排序算法是计算机科学中的核心概念,尤其对于编程语言如PHP来说,理解并掌握各种排序算法的实现方式至关重要。"Sorting.zip"压缩包文件包含了一系列使用PHP实现的排序算法,这对于我们深入理解PHP编程和...
本资料包"用php实现几种常见的排序算法共6页.pdf.zip"聚焦于PHP如何实现几种经典的排序算法,这对于理解数据结构与算法以及提升PHP编程技能至关重要。排序算法是计算机科学中的基础,它们对大量数据进行有序排列,对...
这篇文章主要关注在PHP中实现几种常见的排序算法,包括快速排序和冒泡排序。 1. **快速排序** 快速排序是一种高效的排序算法,由C.A.R. Hoare在1960年提出。它的平均时间复杂度为O(n log n),在大多数情况下比其他...
本文将详细介绍几种常用的排序算法实现,并通过具体的PHP代码示例来帮助理解这些算法的工作原理。 #### 插入排序(Insertion Sort) 插入排序是一种简单直观的排序算法。其工作原理是通过构建有序序列,对于未排序...
总结一下,这份"php-使用php开发的排序算法之BubbleSort-排序算法实现.zip"资料提供了一个用PHP实现冒泡排序的例子,帮助学习者理解如何在实际编程中应用排序算法。通过这个例子,你可以学习到冒泡排序的逻辑以及...
本文将详细介绍几种常见排序算法的基本概念、PHP实现方法和各自的优缺点。 1. 插入排序: 插入排序的基本思想是将数组分为已排序和未排序两部分,每次从未排序的部分取出一个元素插入到已排序部分的适当位置。在PHP...
这里我们探讨几种常见的排序算法:插入排序、选择排序、冒泡排序和快速排序。 插入排序(Insertion Sort)是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描...
快速排序是一种高效的排序算法,由英国计算机科学家C.A.R. Hoare在1960年提出。它采用了分治(Divide and Conquer)的思想,将一个大问题分解成两个或更多的小问题来解决。在PHP中实现快速排序,我们可以按照以下...
十大经典排序算法 (1)多种编程语言,JavaScript,python,go,php等语言。 (2)排序算法可以分为内部排序...常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序
本文将介绍几种常见的排序算法及其在PHP中的实现,包括快速排序、选择排序、插入排序、冒泡排序和归并排序。 1. **快速排序**: 快速排序是一种高效的排序算法,由C.A.R. Hoare在1960年提出。其基本思想是采用分治...
本文将深入探讨PHP中常见的四种排序算法:冒泡排序、插入排序、选择排序和快速排序,并分析它们的效率。 1. **冒泡排序**: 冒泡排序是一种简单的排序方法,通过重复遍历待排序的数组,依次比较相邻的两个元素并...
对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同...
由于提供的信息有限,我会根据“sort.php”这个子文件名来展开讨论,推测这可能涉及到PHP中的排序算法。 在PHP中,处理数组并进行排序是常见的任务。`sort()` 函数就是PHP内置的一个用于对数组进行升序排序的函数。...
4. **PHP实现的排序算法**: PHP作为服务器端脚本语言,虽然没有C++那样底层,但它提供了`sort()`、`rsort()`等函数来排序数组。然而,对于更复杂的排序需求,开发者可能需要自己实现,比如用PHP实现归并排序,或者...
这个压缩包“php代码-十大排序算法”显然是一个包含PHP实现的十种常见排序算法的资源包。下面我们将详细讨论这十个排序算法以及它们在PHP中的应用。 1. 冒泡排序(Bubble Sort): 冒泡排序是一种简单的交换排序...
下面是一段简化版的PHP代码示例,展示了如何实现快速排序算法以处理上述需求: ```php function quickSort(&$arr, $field = 'goods_price', $desc = false) { if (count($arr) ) { return; } $left = $right = ...
1. **排序算法**:包括快速排序(Quick Sort)、归并排序(Merge Sort)、冒泡排序(Bubble Sort)和插入排序(Insertion Sort)。这些算法可以帮助我们对数据进行有效排序,提高数据处理效率。 2. **搜索算法**:...