> 백엔드 개발 > PHP 튜토리얼 > PHP는 다양한 정렬 알고리즘을 구현합니다.

PHP는 다양한 정렬 알고리즘을 구현합니다.

WBOY
풀어 주다: 2016-07-25 09:12:38
원래의
811명이 탐색했습니다.


// 버블정렬
함수 버블정렬($arr) {
// 배열의 전체 길이를 가져옵니다
$num = ( $arr);
// 배열의 순방향 순회
($i = 1 $i $num; $i ) {
// 역순회
($j = $num - 1 $j >= $i ; $j-- ) {
// 인접한 두 숫자 비교
if ($arr[$j] $arr[$j-1]) {
// 더 작은 숫자를 임시로 저장
$iTemp = $arr[$j-1];
// 큰 것을 앞으로 배치하세요
$arr[$j-1] = $arr[$j];
// 작은 것은 뒤에 넣어주세요
$arr[$j] = $iTemp;
}
}
}
반품 $arr;
}

//정렬 교환
기능 ExchangeSort($arr){
$num = ( $arr);
// 배열 순회
($i = 0;$i $num - 1; $i ) {
// 현재 인덱스의 다음 인덱스 가져오기
($j = $i 1 $j $num; $j ) {
// 인접한 두 값 비교
if ($arr[$j] $arr[$i]) {
// 더 작은 숫자를 임시로 저장
$iTemp = $arr[$i];
// 큰 것을 앞으로 배치하세요
$arr[$i] = $arr[$j];
// 작은 것은 뒤에 넣어주세요
$arr[$j] = $iTemp;
}
}
}
반품 $arr;
}

//선택 정렬
함수 정렬 선택($arr) {
// 배열의 전체 길이를 가져옵니다
$num = ( $arr);
// 배열 순회
($i = 0;$i $num- 1 $i ) {
// 현재 값 임시 저장
$iTemp = $arr[$i];
// 현재 위치 임시 저장
$iPos = $i;
// 현재 위치 이후 데이터를 순회
($j = $i 1;$j $num $j ){
// 현재 값보다 작은
이 있는 경우 if ($arr[$j] $iTemp) {
// 임시 최소값
$iTemp = $arr[$j];
// 임시 위치
$iPos = $j;
}
}
// 현재 값을 계산된 위치에 대입
$arr[$iPos] = $arr[$i];
// 현재 값을 계산된 값으로 대체
$arr[$i] = $iTemp;
}
반품 $arr;
}

// 삽입 정렬
함수 InsertSort($arr){
$num = ( $arr);
// 배열 순회
($i = 1;$i $num; $i ) {
// 현재 값 가져오기
$iTemp = $arr[$i];
// 현재 값의 이전 위치 가져오기
$iPos = $i - 1;
// 현재 값이 이전 값보다 작으면 배열의 시작 부분에 도달하지 않은 것입니다.
동안 (($iPos >= 0) && ($iTemp $arr[$iPos])) {
// 이전 값을 한 자리 뒤에 넣습니다.
$arr[$iPos

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