> 백엔드 개발 > PHP 튜토리얼 > PHP 단순 정렬 ​​버블 정렬 및 선택 정렬

PHP 단순 정렬 ​​버블 정렬 및 선택 정렬

WBOY
풀어 주다: 2016-08-08 09:23:56
원래의
944명이 탐색했습니다.
<?php

$arr = array(100,2,4,5,6,1,7,3);
var_dump($arr);
$sort =  fn_sort($arr);
var_dump($sort);

$selectorsort = fn_selectsort($arr);
var_dump($selectorsort);


/**
 * 冒泡排序  每相邻的两位数组进行比较,比较大的放后面
 */
//$arr = array(100,2,4,5,6,1,7,3);   
//array(2,4,5,6,1,7,3,100)  第一遍
//array(2,4,5,1,6,3,7,100)  第二遍
//array(2,4,5,1,3,6,7,100)  第三遍
//array(2,4,1,3,5,6,7,100)  第四遍
//...
//array(1,2,3,4,5,6,7,100)  最后一遍

function fn_sort($arr){
    for($i = 0;$i < (count($arr)); $i++){
        for($j = $i;$j < count($arr);$j++){
            if($arr[$i] > $arr[$j]){
                $temp = $arr[$i];
                $arr[$i] = $arr[$j];
                $arr[$j]  = $temp;
            }
        }
        
    }
    return $arr;
}


/**
 * 选择排序排序selectsort  关键是找到最小数组的下标
 */
//$arr = array(100,2,4,5,6,1,7,3);   
//array(1,2,4,5,6,100,7,3)  第一遍
//array(1,2,4,5,6,100,7,3)  第二遍
//array(1,2,3,5,6,100,7,4)  第三遍
//array(1,2,3,4,6,100,7,5)  第四遍
//...
//array(1,2,3,4,5,6,7,100)  最后一遍
function fn_selectsort($arr){
    for($i = 0; $i < count($arr); $i++){
        $min = $i;
        for($j = $i+1; $j < count($arr); $j++){
            if($arr[$min] > $arr[$j]){
                $min = $j;  //找到最小的那个数组下标
            }
        }
        
        //如果已经找到了最小数组下标,就替换当前数组与找到的最小数组进行替换
        if($min != $i){
            $temp  = $arr[$i];
            $arr[$i] = $arr[$min];
            $arr[$min] = $temp;
        }
        
    }
    return $arr;
}
?>

로그인 후 복사

by:19 자료

위 내용은 PHP 단순정렬의 버블정렬과 선택정렬에 대한 내용을 관련 내용을 포함하여 소개한 내용으로, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿