php怎么实现冒泡排序算法

本文操作环境:windows10系统、PHP 7、thinkpad t480电脑。

在给出具体的实现代码之前,我们先来简单介绍下冒泡排序

冒泡排序是一种比较简单的排序算法,它重复地走访过要排序的元素列,一次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。

接着我们来看下冒泡排序的原理:

比较相邻的元素。如果第一个比第二个大,就交换他们两个。

对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

针对所有的元素重复以上的步骤,除了最后一个。

持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

最后我们来看下具体的实现代码:

<?php
$arr = array('5','2','0','1','3','1','4');
 
function BubbleSort(array $arr)
{
 
	for ($i=0 ; $i <count($arr) ; $i++) { 
		//设置一个空变量
		$data = '';
		for ($j=$i ; $j < count($arr)-1 ; $j++) { 
			if ($arr[$i] > $arr[$j+1]) {
 
				$data      = $arr[$i]; 
				$arr[$i]   = $arr[$j+1];
				$arr[$j+1] = $data; 
			}
		}
	}
 
	return $arr;
}
echo "<pre>";
print_r(BubbleSort($arr));

--结束END--

本文标题: php怎么实现冒泡排序算法

本文链接: https://www.lsjlt.com/news/185.html (转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢

  • php怎么实现冒泡排序算法

    php实现冒泡排序算法的方法:【for ($i=0 ; $i<count($arr) ; $i++) {$data = '';for ($j=$i ; $j < count($arr)-1 ; $j++) {if ($arr[$..】。
    阅读数:776 php 冒泡排序
  • php排序算法有哪些

    php中常见的排序算法有冒泡排序、选择排序、插入排序、归并排序、快速排序几种1.冒泡排序算法冒泡排序算法是一种简单直观的排序算法,其原理是重复地走访需要排序的元素列表,依次比较两个相邻的元素,如果顺序错误就交换它们的位置,重复地进行直到没有
    阅读数:671 PHP 排序算法
  • PHP常见的几种排序算法介绍

    这篇文章主要介绍“PHP常见的几种排序算法介绍”,在日常操作中,相信很多人在PHP常见的几种排序算法介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP常见的几种排序算法介绍”的疑惑有所帮助!接下来,请跟
    阅读数:570 php
  • php中冒泡排序的时间复杂度和空间复杂度是什么

    小编给大家分享一下php中冒泡排序的时间复杂度和空间复杂度是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!冒泡排序的时间复杂度和空间复杂度1、代码实现 $arr = [2, 4, 1, 5, 3, 6]
    阅读数:730 php
  • php如何写一个二维数组排序算法函数

    这篇文章给大家分享的是有关php如何写一个二维数组排序算法函数的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数(array_multisort())
    阅读数:260 php
  • php怎么实现阶乘算法

    实现步骤:1、定义一个变量并赋值1,用于储存阶乘结果,语法“$cj=1;”;2、使用for语句循环遍历“1~n”范围的数,求n的阶乘,语法“for ($i = 1; $i = $n; $i++) {//循环体代码}”;3、在循环体中,将每次循环的“$i”值相乘,并赋值给“$cj”,语法“$cj *= $i;”,等循环结束后,变量“$cj”的值就是n的阶乘。本教程操作环境:windows7系统、PH
    阅读数:500 php
  • php怎么实现并归排序

    php实现并归排序的方法:1、创建一个PHP示例文件;2、定义“public function handle(){...}”方法;3、通过“private function mergeSort($a, $lo, $hi) {...}”方法把数据逐步分解;4、通过“merge”方法对分解后的数据进行排序,再合并到一起即可。
    阅读数:353 归并排序 php
  • php数组怎么实现键值不变倒序排序

    php数组实现键值不变倒序排序的方法:1、使用rsort()函数,语法“rsort(array,sortingtype)”;2、使用arsort()函数,语法“arsort(array,sortingtype)”。
    阅读数:567 php 数组 倒序排序
  • php怎么实现对字符串的排序

    实现步骤:1、利用str_split()函数将字符串转为字符数组,语法“str_split(字符串)”;2、使用asort()或arsort()函数来对字符数组进行升序排序或降序排序,语法“asort(字符数组)”或“arsort(字符数组)”;3、使用implode()函数将排序后的字符数组转回字符串,语法“implode(排序后字符数组)”。前端(vue)入门到精通课程:进入学习本教程操作环境:
    阅读数:432 php php数组 php字符串
  • PHP实现排序功能总结

    本篇文章给大家带来了关于PHP的相关知识,其中主要介绍了关于排序功能的相关问题,通过实例完成php+mysqli排序功能的实现,下面一起来看一下,希望对大家有帮助。和大家一起完成php+mysqli排序功能的实现.一、sql:-- phpMyAdmin SQL Dump-- version 4.5.1-- http://www.phpmyadmin.net---- Host: 127.0.0.1--
    阅读数:229 php
  • 怎么用php的sort实现一个排序

    在php中,sort可以用于对数值数组进行升序排序,语法为“sort(要进行排序的数组,规定如何排序数组的元素)”;如果排序成功,返回的结果是true,若失败则返回false,规定如何排序数组的元素参数默认是“1”,表示每一项按常规顺序排列。本文操作环境:Windows10系统、PHP8.1版、Dell G3电脑怎么用php的sort实现一个排序sort() 函数对数值数组进行升序排序。提示:请使用
    阅读数:758 php
  • php 文件怎么按修改时间排序

    php文件按修改时间排序的方法:1、通过“function printdir($dir){...}”方法遍历目录下的文件;2、通过“function arraysort($aa) {...}”方法对返回数组按修改时间排序即可。
    阅读数:622 php 排序
  • php怎么求数组从大到小排序

    3种方法:1、利用rsort()对数组进行降序排列,语法“rsort(数组);”;2、用arsort(),语法“arsort(数组)”,可根据数组键值进行降序排列;3、用krsort(),语法“krsort(数组)”,根据键名进行降序排列。本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑数组从大到小排序,也就是对数组进行降序排序。PHP常用的数组降序排序方法有3种:rsort
    阅读数:887 php数组 php
  • PHP实现LRU算法的示例代码

    本篇文章主要给大家介绍了PHP的相关知识,LRU是Least Recently Used 近期最少使用算法, 内存管理的一种页面置换算法,下面将详解LRU算法的原理以及实现,下面一起来看一下,希望对大家有帮助。(推荐教程:PHP视频教程)原理LRU是Least Recently Used 近期最少使用算法。 内存管理的一种页面置换算法,对于在内存中但又不用的数据块(内存块)叫做LRU,操作系统会根据
    阅读数:841 php
  • PHP实现LRU算法的原理详解

    这篇文章主要为大家详细介绍了PHP实现LRU算法的原理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    阅读数:221 PHP LRU算法 LRU算法原理
  • php如何给数组排序

    在php中使用sort()函数对数组进行排序,具体方法如下:sort()函数作用:php中sort()函数的作用是用于对索引数组进行升序排序。sort()函数语法:sort(array,sortingtype);参数:array:指定数组;
    阅读数:840 PHP
  • php怎么对数组逆向排序且不保留键名

    实现步骤:1、利用array_reverse()函数对数组进行逆向排序,语法“array_reverse(原数组)”,会返回一个逆向数组;2、使用array_values()函数重置逆向数组的键名,语法“array_values(逆向数组)”,被返回的数组将使用数值键,从0开始且以1递增。php零基础到就业直播视频课:进入学习本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑在
    阅读数:932 php php数组
  • php如何实现二维数组排序

    在php中,可以使用array_multisort()函数实现二维数组排序。该函数可以对多个数组或多维数组进行排序,语法“array_multisort(二维数组,排列顺序,排序类型)”;当第二个参数省略或设置为“SORT_ASC”则升序排列,设置为“SORT_DESC”则降序排列。前端(vue)入门到精通课程:进入学习本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑在php
    阅读数:555 php php数组
  • 插入排序_Python与PHP的实现版(推荐)

    插入排序Python实现import randoma=[random.randint(1,999) for x in range(0,36)]# 直接插入排序算法def insertionSort(a):for i in range(1,
    阅读数:869 _Python PHP
  • php一维数组怎么升序排序(不去重)

    升序排序的三种方法:1、使用sort()函数,可对数组元素进行升序排序,语法“sort($arr,排序模式);”;2、使用asort()函数,可根据关联数组的键值进行升序排列,语法“asort($arr,排序模式)”;3、使用ksort()函数,可根据关联数组的键名进行升序排序,语法“ksort($arr,排序模式)”。php零基础到就业直播视频课:进入学习本教程操作环境:windows7系统、PH
    阅读数:729 php php数组