Three ways to sort arrays in PHP, three ways to sort PHP arrays
Instructions: Find the largest number, arrange it to the end, and then continue to find
example:
$arr = array(3,5,-1,0,2);
for($i=0;$i
$arr[$j 1]){
$temp = $arr[$j];
$arr[$j]=$arr[$j 1];
$arr[$j 1]=$temp;
} }
}
}
understand:
3, 5, -1, 0, 2
//Compare starting from the first number and going backwards. If it is larger than the following number, adjust the position with the following number.
//The first time, 3 is less than 5, then it remains unchanged
//The second time, 5 is greater than -1, then it becomes
3, -1, 5, 0, 2
//The third time, 5 is greater than 0
3, -1, 0, 5, 2
//The fourth time, 5 is greater than 2
3, -1, 0, 2, 5
This completes an inner loop. At this time, the last number is sorted and will not participate next time.
3, -1, 0, 2, 5
The second outer loop begins
The first time: 3 is greater than -1
-1, 3, 0, 2, 5
The second time: 3 is greater than 0
-1, 0, 3, 2, 5
The third time: 3 is greater than 2
-1, 0, 2, 3, 5
This completes the sorting of the next two digits, and so on.
-1, 0, 2, 3, 5
2. Selection sorting method
Description: First assume that the first number is the smallest number, and then compare the following numbers with it in turn. If the assumed number is not the smallest number, swap it with the following smallest number.
$arr=array(2,1,-1,3,0);
for($i=0;$i=0 && $insertval<$arr[$insertindex]){
$arr[$insertindex 1]=$arr[$insertindex];
$insertindex--;
}
$temp = $arr[$i];
$arr[$insertindex 1]=$insertval;
}
understand:
2, 1, -1, 3, 0
//For the first time, save the number 1 to be inserted as insertval, and then compare insertval with 2. 1 is less than 2, so move 2 back to become the following picture
2, 2, -1, 3, 0
//At this time, there is no number in front of 2, insertindex=0, so the comparison is completed, then insert insertval to the found position. It becomes as shown below
1, 2, -1, 3, 0
//At this time, 1 and 2 become ordered arrays
//The second time, first save the number to be inserted -1 as insertval, and then compare insertval with 2. -1 is less than 2, so move 2 back to become the following figure
1, 2, 2, 3, 0
//At this time, compare insertval with 1. If -1 is less than 1, then move -1 back to become the following picture (this is a process of comparing the number to be inserted with the previous ordered array)
1, 1, 2, 3, 0
//At this point, insertindex has come to an end, so insertval is inserted at this position
-1, 1, 2, 3, 0
//The following method is as above
http://www.bkjia.com/PHPjc/1115252.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1115252.htmlTechArticleThree sorting methods for arrays in PHP, three sorting instructions for php arrays: find the largest number and arrange it to the end face, and then continue to find examples: $arr = array(3,5,-1,0,2);for($i=0;$icount($arr)-1;...