Hầu hết các câu trả lời khác sử dụng hai câu trả lời cho các vòng để sắp xếp một mảng. Lúc đầu, mã có vẻ khá thẳng và thậm chí tôi cũng nghĩ như vậy. Nhưng sau đó tôi muốn điều tra thêm. Phương pháp này hiệu quả như thế nào? Vì vậy, bằng cách sử dụng một mảng 10.000 giá trị, tôi đã sử dụng hai phương thức cho vòng lặp và có thời gian thực hiện là 7,5 giây
Đây là cách quá nhiều. Tôi chắc rằng PHP không thể là cẩu thả như vậy. Vì vậy, tiếp theo tôi đã kiểm tra chức năng PHP rsort[]
được xây dựng và có thời gian 0,003 giây.
Một số nghiên cứu đã cho tôi câu trả lời rằng PHP sử dụng thuật toán Quicksort để sắp xếp các mảng được lập chỉ mục với hàm đệ quy. Tôi đào sâu hơn và tìm thấy một vài ví dụ về QuickSearch cho C ++, Java, v.v. Vì vậy, tôi đã sao chép chúng trong PHP, như sau:
/*
The main function that implements QuickSort
arr --> Array to be sorted,
low --> Starting index,
high --> Ending index
*/
function quickSort[&$arr, $low, $high]
{
if [$low < $high]
{
/* pi is partitioning index, arr[p] is now
at right place */
$pi = partition[$arr, $low, $high];
// Separately sort elements before
// partition and after partition
quickSort[$arr, $low, $pi - 1];
quickSort[$arr, $pi + 1, $high];
}
return $arr;
}
function partition [&$arr, $low = 0, $high]
{
$pivot = $arr[$high]; // pivot
$i = [$low - 1]; // Index of smaller element
for [$j = $low; $j
Jesper tại snt dot utwente dot nl ¶
Làm thế nào tôi có thể sắp xếp một mảng trong PHP mà không có chức năng?
Thí dụ
Làm thế nào để bạn sắp xếp một mảng mà không có chức năng?Advertisements
Để sắp xếp một mảng trong Java mà không có phương thức Sắp xếp [], bạn có thể sử dụng: Sắp xếp lựa chọn. Sắp xếp chèn. Sắp xếp bong bóng.
Jesper tại snt dot utwente dot nl ¶
Jesper tại snt dot utwente dot nl ¶
Làm thế nào tôi có thể sắp xếp một mảng trong PHP mà không có chức năng? — Sort an array in ascending order
Sự mô tả
Làm thế nào để bạn sắp xếp một mảng mà không có chức năng?[array &$array
, int $flags
= SORT_REGULAR
]: bool
Để sắp xếp một mảng trong Java mà không có phương thức Sắp xếp [], bạn có thể sử dụng: Sắp xếp lựa chọn. Sắp xếp chèn. Sắp xếp bong bóng.:
Làm thế nào để tôi sắp xếp trong PHP?
PHP - Sắp xếp các hàm cho mảng sắp xếp [] - Sắp xếp các mảng theo thứ tự tăng dần. rsort [] - Sắp xếp các mảng theo thứ tự giảm dần. asort [] - Sắp xếp các mảng liên kết theo thứ tự tăng dần, theo giá trị. Ksort [] - Sắp xếp các mảng liên kết theo thứ tự tăng dần, theo khóa.: This function assigns new keys to the elements in
0. It will remove any existing keys that may have been assigned, rather than just reordering the keys.
Để sắp xếp một mảng trong Java mà không có phương thức Sắp xếp [], bạn có thể sử dụng: Sắp xếp lựa chọn. Sắp xếp chèn. Sắp xếp bong bóng.:
Làm thế nào để tôi sắp xếp trong PHP?
PHP - Sắp xếp các hàm cho mảng sắp xếp [] - Sắp xếp các mảng theo thứ tự tăng dần. rsort [] - Sắp xếp các mảng theo thứ tự giảm dần. asort [] - Sắp xếp các mảng liên kết theo thứ tự tăng dần, theo giá trị. Ksort [] - Sắp xếp các mảng liên kết theo thứ tự tăng dần, theo khóa.
Sắp xếp hoạt động như thế nào trong PHP?Hàm sort [] là một hàm sẵn có trong PHP và được sử dụng để sắp xếp một mảng theo thứ tự tăng dần, tức là nhỏ hơn đến lớn hơn. Nó sắp xếp các mảng thực tế và do đó các thay đổi được phản ánh trong chính mảng ban đầu. Hàm cung cấp cho chúng tôi 6 loại sắp xếp, theo đó mảng có thể được sắp xếp.
[Php 4, Php 5, Php 7, Php 8]Sắp xếp - Sắp xếp một mảng theo thứ tự tăng dần
Sự mô tả
- Sắp xếp [mảng
&$array
, int$flags
=SORT_REGULAR
]: Bool - compare items normally; the details are described in the comparison operators section - Ghi chú: - compare items numerically
- Nếu hai thành viên so sánh bằng nhau, họ giữ lại thứ tự ban đầu của họ. Trước PHP 8.0.0, thứ tự tương đối của chúng trong mảng được sắp xếp không được xác định. - compare items as strings
- Lưu ý: Hàm này gán các khóa mới cho các phần tử trong
- Đặt lại con trỏ bên trong của mảng đến phần tử đầu tiên. - compare items as strings using "natural ordering" like natsort[]
- Thông số - can be combined [bitwise OR] with
0
Mảng đầu vào.
2.
2
Tham số thứ hai tùy chọn
2 có thể được sử dụng để sửa đổi hành vi sắp xếp bằng các giá trị này:sort[] example
3
4
5
Sắp xếp các lá cờ:
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange
SORT_REGULAR
- So sánh các mục bình thường; Các chi tiết được mô tả trong phần vận hành so sánh
5 - So sánh các mục bằng sốsort[] example using case-insensitive natural ordering
3
4
8
Sắp xếp các lá cờ:
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange20
SORT_REGULAR
- So sánh các mục bình thường; Các chi tiết được mô tả trong phần vận hành so sánhnatcasesort[].
5 - So sánh các mục bằng số
6 - So sánh các mục dưới dạng chuỗi: Like most PHP sorting functions, sort[] uses an implementation of » Quicksort. The pivot is chosen in the middle of the partition resulting in an optimal time for already sorted arrays. This is however an implementation detail you shouldn't rely on.
7 - So sánh các mục dưới dạng chuỗi, dựa trên địa phương hiện tại. Nó sử dụng locale, có thể được thay đổi bằng setlocale []
8 - So sánh các mục như các chuỗi sử dụng "thứ tự tự nhiên" như natsort []sort[] can produce unexpected results, if
2 is
SORT_REGULAR
.
9 - có thể được kết hợp [bitwise hoặc] với
6 hoặc
8 để sắp xếp các chuỗi không nhạy cảm với chuỗi
- Trả về giá trị
- Luôn trả về
Ví dụ ¶
12 năm trước
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange1
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange2
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange3
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange4
Ví dụ #1 Sắp xếp [] Ví dụ ¶
Ví dụ trên sẽ xuất ra:
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange5
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange6
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange7
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange8
Các loại trái cây đã được sắp xếp theo thứ tự bảng chữ cái. ¶
11 năm trước
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange9
Anthony tại Ectrolinux dot com ¶
15 năm trước
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange200
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange201
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange202
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange203
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange204
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
18 năm trước ¶
www tại DesignDetector Dot Com ¶
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange206
14 năm trước ¶
Jesper tại snt dot utwente dot nl ¶
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange207
Làm thế nào tôi có thể sắp xếp một mảng trong PHP mà không có chức năng? ¶
10 năm trước
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange208
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange209
rsort[]
0
rsort[]
1
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Làm thế nào để bạn sắp xếp một mảng mà không có chức năng? ¶
12 năm trước
rsort[]
3
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange6
rsort[]
5
Làm thế nào để tôi sắp xếp trong PHP? ¶
PHP - Sắp xếp các hàm cho mảng sắp xếp [] - Sắp xếp các mảng theo thứ tự tăng dần. rsort [] - Sắp xếp các mảng theo thứ tự giảm dần. asort [] - Sắp xếp các mảng liên kết theo thứ tự tăng dần, theo giá trị. Ksort [] - Sắp xếp các mảng liên kết theo thứ tự tăng dần, theo khóa.
rsort[]
7
rsort[]
8
rsort[]
9
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Sắp xếp hoạt động như thế nào trong PHP? ¶
15 năm trước
rsort[]
1
rsort[]
2
rsort[]
3
rsort[]
4
rsort[]
5
rsort[]
6
rsort[]
7Hàm sort [] là một hàm sẵn có trong PHP và được sử dụng để sắp xếp một mảng theo thứ tự tăng dần, tức là nhỏ hơn đến lớn hơn. Nó sắp xếp các mảng thực tế và do đó các thay đổi được phản ánh trong chính mảng ban đầu. Hàm cung cấp cho chúng tôi 6 loại sắp xếp, theo đó mảng có thể được sắp xếp. ¶
16 năm trước
rsort[]
8
rsort[]
9
&$array
0
Sắp xếp - Sắp xếp một mảng theo thứ tự tăng dần ¶
Jesper tại snt dot utwente dot nl ¶
&$array
2
&$array
3
&$array
4
&$array
5Làm thế nào tôi có thể sắp xếp một mảng trong PHP mà không có chức năng? ¶
14 năm trước
&$array
6
&$array
7
&$array
8
&$array
9
$flags
0
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Md. Abutaleb ¶ ¶
2 năm trước
$flags
2
$flags
3
$flags
4
r tại rcse dot de ¶ ¶
3 năm trước
$flags
5
Abhishek Banerjee ¶ ¶
6 năm trước
$flags
6
$flags
7
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange2
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange3
SORT_REGULAR
0AdityCse tại Gmail Dot Com ¶ ¶
7 năm trước
SORT_REGULAR
1
SORT_REGULAR
2
SORT_REGULAR
3
SORT_REGULAR
4
SORT_REGULAR
5
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
tôi [at] szczepan [dot] thông tin ¶ ¶
9 năm trước
SORT_REGULAR
7
SORT_REGULAR
8
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
James tại Miicro Dot Net ¶
17 năm trước
00
01
02
03
04
05
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Alex Dot Hristov Dot 88 tại Gmail Dot Com ¶ ¶
11 năm trước
07
08
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Stepmuel tại EE DOT Ethz Dot Ch ¶
13 năm trước
10
11
12
13
Alex [at] vkpb [dot] com ¶ ¶
15 năm trước
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
G8Z tại Yahoo Dot Com ¶ ¶
16 năm trước
rsort[]
8
rsort[]
9
32
33
34
35
36
37
38
&$array
0
&$array
1Emiliyan tại Servicesbg Dot Com ¶ ¶
16 năm trước
41
Emiliyan tại Servicesbg Dot Com ¶ ¶
16 năm trước
42
43
44
45
46
47
48
49
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Emiliyan tại Servicesbg Dot Com ¶ ¶
17 năm trước
51
52
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Alex Dot Hristov Dot 88 tại Gmail Dot Com ¶ ¶
11 năm trước
54
55
56
57
58
59
60
Stepmuel tại EE DOT Ethz Dot Ch ¶
11 năm trước
61
62
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Stepmuel tại EE DOT Ethz Dot Ch ¶
13 năm trước
64
65
66
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Alex [at] vkpb [dot] com ¶ ¶
16 năm trước
68
69
70
71
72
73
74
75
76
fruits[0] = Orange1 fruits[1] = orange2 fruits[2] = Orange3 fruits[3] = orange205
Emiliyan tại Servicesbg Dot Com ¶ ¶
15 năm trước
78
fruits[0] = apple fruits[1] = banana fruits[2] = lemon fruits[3] = orange6
80
81
G8Z tại Yahoo Dot Com ¶ ¶
11 năm trước
82
Stepmuel tại EE DOT Ethz Dot Ch ¶
13 năm trước
83
Alex [at] vkpb [dot] com ¶ ¶
15 năm trước
84
85
86
87
G8Z tại Yahoo Dot Com ¶ ¶
16 năm trước
88
89
90
91