이 글은 주로 PHP 선택 정렬을 통해 배열 정렬을 구현하는 방법을 소개합니다. 선택 정렬의 원리와 구체적인 구현 단계를 예제로 분석합니다. 필요한 친구가 참고할 수 있습니다.
이 글은 PHP 선택을 분석합니다. 예제를 통한 정렬 배열 정렬 구현 방법 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.
선택 정렬 방법의 기본 아이디어: 예를 들어 $arr = array(2,6,3,9)라는 배열이 있습니다. 큰 것부터 작은 것까지 정리했습니다.
첫 번째 큰 루프: 먼저 $arr[0]이 최대값이라고 가정한 다음 각각 $arr[1]~$arr[3]과 비교하여 더 크면 교환됩니다. 과정은 다음과 같습니다 ( 2,6,3,9)---2와 6의 비율--->(6,2,3,9)---6과 3의 비율---> (6,2,3,9) ---6과 9가 --->(9,2,3,6)보다 좋습니다. 여기의 아래첨자도 변경해야 합니다.
두 번째 큰 루프: $arr[1]이 가장 크다고 가정하고($arr[0]은 제외) 각각 $arr[2]~$arr[3]과 비교합니다(9, 2,3, 6)----2와 3의 비율---->(9,3,2,6)---3과 6의 비율--->(9,6,2,3) .
세 번째 큰 루프: $arr[2]가 가장 크다고 가정하고 이를 $arr[3]과 비교합니다. 프로세스는 다음과 같습니다(9,6,2,3)---2와 3의 비율-- ->(9 ,6,3,2)
마찬가지로 N-1개의 큰 루프 후에 배열할 수 있습니다
PHP 코드는 다음과 같습니다. 여기에도 함수가 포함되어 있습니다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
코드 분석:
첫 번째 루프:
$i=0 배열 (2,6,3,9)
$j=1, 2와 6의 비율을 실행하면 $arr[0]=6,$arr[1]이 됩니다. =2,$max =6 즉 (6,2,3,9)
$j=2, 3과 6 비율 실행: 실행하지 않음
$j=3, 9와 6 비율 실행: $arr[0이 됨 ]=9,$arr [3]=6,$max=9 즉 (9,2,3,6)
두 번째 큰 루프:
$i=1,$max=$arr[1]=2 , 배열 (9, 2,3,6)
$j=2, 3과 2의 비율을 실행하면 $arr[1]=3,$arr[2]=2,$max=3이 됩니다. 즉 , (9,3,2,6)
$j=3, 6과 3의 비율을 실행하면 $arr[1]=6, $arr[3]=3, $max=6이 됩니다. 이는 ( 9,6,2,3)
세 번째 루프:
$i=2, $max=$arr[2]=2, array (9,6,2,3)
$j=3, 실행 3과 2 비율: $max[2]= 3, $arr[3]=2, $max=3, 즉 (9,6,3,2)
요약: 위 내용은 전체 내용입니다. 이 글이 모든 분들의 공부에 도움이 되었으면 좋겠습니다.
관련 추천:
위 내용은 PHP 선택 정렬 원리 및 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!