美文网首页
冒泡算法,php实现

冒泡算法,php实现

作者: designer | 来源:发表于2020-05-06 13:50 被阅读0次

思路:冒泡排序法

  •  1.相邻两个元素比较,交换顺序
    
  •  2.执行一趟,排序一个元素
    
<?php
/**
 * Created by PhpStorm.
 * User: jiaoyang
 * Date: 2019/8/6
 * Time: 下午10:05
 */

namespace app\index\controller;


use think\Controller;
use think\Exception;

/**
 * 思路:冒泡排序法
 *      1.相邻两个元素比较,交换顺序
 *      2.执行一趟,排序一个元素
 * Class BubbleSort
 * @package app\index\controller
 */
class BubbleSort extends  Controller
{
    public function sort(){

        $arr = [9,10,6,3,5,7,8];
        print_r($this->bubbleSort($arr));
    }

    public function  bubbleSort($arr){
        if(!is_array($arr)){
           throw new Exception('不是一个合法的数组');
        }
        $len = count($arr);
        for($i = 1;$i<=$len;$i++){ //控制执行多少趟,n个元素,要执行n趟
            for($j = 0;$j<$len-$i;$j++){ //每趟需要比较的数,每执行一趟,排序好一个元素,所以每趟比较次数减一
                $this->swap($arr[$j],$arr[$j+1]);
            }
        }
        return $arr;

    }

    public function  swap(&$a,&$b){
        if($a>$b){
            $tmp = $a;
            $a = $b;
            $b = $tmp;
        }
    }
}

相关文章

  • 冒泡算法,php实现

    思路:冒泡排序法 1.相邻两个元素比较,交换顺序 2.执行一趟,排序一个元素

  • 算法系列教程(PHP演示)

    算法系列教程-四大排序算法(PHP演示) 冒泡 冒泡排序原理...

  • php实现冒泡排序算法

    理解 冒泡排序,时间复杂度哦、O(N^2)冒泡排序的核心部分是双重嵌套循环。不难看出冒泡排序的时间复杂度是 O(N...

  • PHP实现冒泡排序算法

    冒泡排序 -完整代码 -运行测试代码 -注意:请使用PHP7.0以上版本测试 -如有不正确的地方或者代码需要优化的...

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

  • 七大排序算法之冒泡排序

    七大排序算法之冒泡排序 @(算法笔记)[排序算法, 冒泡排序, C++实现] 冒泡排序介绍 冒泡排序是七大排序算法...

  • 前端算法学习-第一篇

    冒泡排序算法 冒泡排序算法是最慢的排序算法之一,也是最容易实现的排序算法。之所以叫冒泡排序是因为使用这种算法排序时...

  • 算法:冒泡排序

    本文内容:1、什么是冒泡排序?2、冒泡排序的 C/OC 实现与算法分析。 算法总目录:算法? 1、什么是冒泡排序?...

  • 数据结构&算法(一)

    一、Java实现快速排序算法 二、Java实现折半插入排序算法 三、Java实现冒泡排序算法

  • 快速排序算法的PHP与JQuery简单实现

    快速排序(以下简称快排)算法的PHP与JQuery简单实现 1.简介: 1.快排的本质是冒泡排序(Bubble S...

网友评论

      本文标题:冒泡算法,php实现

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