/
bubblesort.php
71 lines (60 loc) · 1.43 KB
/
bubblesort.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
function netbubbleSort(array $arr)
{
$n = sizeof($arr);
for ($i = 1; $i < $n; $i++) {
for ($j = $n - 1; $j >= $i; $j--) {
if($arr[$j-1] > $arr[$j]) {
$tmp = $arr[$j - 1];
$arr[$j - 1] = $arr[$j];
$arr[$j] = $tmp;
}
}
}
return $arr;
}
function mybubbleSort(array $arr)
{
$n = sizeof($arr);
for ($i = 1; $i < $n; $i++) {
echo "i: ".$i."<br>";
echo "j: ";
for ($j = $n - 1; $j >= $i; $j--) {
echo '['.$j.']';
if($arr[$j-1] > $arr[$j]) {
$tmp = $arr[$j - 1];
$arr[$j - 1] = $arr[$j];
$arr[$j] = $tmp;
}
}
echo "<br>";
echo "k: ";
for ($k = 0; $k < $i; $k++) {
echo '['.$k.']';
if($arr[$k+1] < $arr[$k]) {
$tmp = $arr[$k + 1];
$arr[$k + 1] = $arr[$k];
$arr[$k] = $tmp;
}
}
echo "<br>";
print_r ($arr);
echo "<hr>";
}
return $arr;
}
$arr = array(255,1,22,3,45,5,6);
// print_r($arr);
printarr($arr);
$result = netbubbleSort($arr);
$myresult = mybubbleSort($arr);
// print_r($result);
printarr($result);
printarr($myresult);
function printarr($a){
foreach ($a as $key => $value) {
echo $value."<br>";
}
echo "<hr>";
}
?>