PHP 实现冒泡排序

作者: phpworkerman | 来源:发表于2022-08-18 17:46 被阅读0次
算法简介

冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。

代码实现
<?php
$arr = [7, 43, 34, 34, 12, 0, 123, 22, 33];

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

print_r($arr);

排序结果

Array
(
    [0] => 0
    [1] => 7
    [2] => 12
    [3] => 22
    [4] => 33
    [5] => 34
    [6] => 34
    [7] => 43
    [8] => 123
)

以上的例子单纯通过 PHP 的 sort 函数也能实现,这里学习的是一种算法思想,在问了 JAVA 同事后才知道他们都是手搓算法的,并没有 PHP 这种简便的内置函数,长久以来一直听人说 PHP 上手简单、开发快,各种开箱即用的函数用起来是很爽,但也屏蔽了背后的原理,不禁感慨人还是要不断学习,开阔自己的眼界,不能只活在自己的那口井里。

相关文章

  • 排序算法

    冒泡排序 PHP OC 快速排序

  • PHP 冒泡排序法

    PHP 冒泡排序法

  • PHP实现冒泡排序

    冒泡排序属于交换排序,是一种稳定排序,平均时间复杂度为O(n^2),最好情况时间复杂度为O(n),最坏情况时间复杂...

  • PHP 实现冒泡排序

    导语 冒泡排序是相对比较简单、常用的算法,同时在面试中也是最常被问到的问题。自认能力不够,不能有更深的理解,下面就...

  • 冒泡排序(php实现)

    什么是冒泡排序 冒泡排序的英文Bubble Sort,是一种最基础的交换排序。大家一定都喝过汽水,汽水中常常有许多...

  • php实现冒泡排序

    原数组 思路解析 按照二维数组中某个值大小排序 原数组 冒泡排序的实现

  • php实现冒泡排序

    总结冒泡排序 1:相邻的两个数的比较 2:两层循环 第一层是决定多少轮,第二层决定每层需要多少次 3:临时变量存放...

  • PHP实现冒泡排序

    一个程序应包括:对数据的描述:在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)...

  • PHP实现:冒泡排序

  • PHP实现冒泡排序

    笔试时,常常遇到要手写实现PHP冒泡排序,虽说挺恶心的,但是还是得写出来

网友评论

    本文标题:PHP 实现冒泡排序

    本文链接:https://www.haomeiwen.com/subject/qabegrtx.html