이 글은 PHP에서 빠른 정렬을 구현하기 위한 알고리즘 아이디어와 코드를 제공합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
핵심 아이디어: 크기에 따라 둘로 나누고, 재귀적으로 정렬하고, 앞뒤로 보기(분할 기능).
php 코드는 다음과 같습니다.
<?php function quickSort($arr){ $resultArr=qSort($arr,0,count($arr)-1); return $resultArr; } function qSort($arr,$low,$high){ if($low<$high){ //算出枢轴值 $partRes=partition($arr,$low,$high); $arr=$partRes["resultArr"]; $arr=qSort($arr,$low,$partRes["pivot"]-1);//对低子表递归排序 $arr=qSort($arr,$partRes["pivot"]+1,$high);//对高子表递归排序 } return $arr; } function partition($arr,$low,$high){ $pivotkey=$arr[$low]; //用子表的第一个记录作枢纽记录 while ($low<$high){ //从表的两端交替向中间扫描 while ($low<$high&&$arr[$high]>=$pivotkey){ $high--; } $arr=swap($arr,$low,$high);//将比枢轴记录小的记录交换到低端 while ($low$low,"resultArr"=>$arr);//返回枢轴所在位置 } function swap($arr,$index1,$index2){ $pivotkey=$arr[$index1]; $arr[$index1]=$arr[$index2]; $arr[$index2]=$pivotkey; return $arr; } $arr=array(9,1,3,2,6,7,4,8); $resultArr=quickSort($arr); echo implode(',',$resultArr);
추천 관련 기사:
PHP 빠른 정렬 작은 예 PHP 빠른 정렬 구현 방법
빠른 정렬 PHP 구현 php 빠른 정렬 방법 php 빠른 정렬 빠른 정렬의 아이디어는
위 내용은 PHP의 빠른 정렬을 위한 알고리즘 아이디어 및 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!