

Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
Code:
Cách 1:
*Tăng dần:
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
*Giảm dần:
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]<a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
Cách 2:
*Tăng dần:
for i:=1 to n do
for j:=1 to i-1 do
if a[i]<a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
*Giảm dần:
for i:=1 to n do
for j:=1 to i-1 do
if a[i]>a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
Giải thích:
Cách 1:
- Cho i chạy từ 1 đến n-1
- Cho j chạy từ i+1 đến n
- Nếu a[i]>a[j] thì đổi chỗ hai số (để đổi số bé nhất lên đầu)
- Tương tự với a[i]<a[j] thì đổi số lớn nhất lên đầu
Cách 2:
- Cho i chạy từ 1 đến n
- Cho j chạy từ 1 đến i-1
- Nếu a[i]<a[j] thì đổi chỗ hai số (để đổi số bé nhất lên đầu)
- Tương tự với a[i]>a[j] thì đổi số lớn nhất lên đầu
Hãy giúp mọi người biết câu trả lời này thế nào?

Bảng tin
2863
41637
21147
Chạy từ i đến i-1???
1210
30619
1167
for j:=i+1 to i-1 do ???
2289
45107
1741
copy xuống nó vậy sr mấy ca nha :))
2376
46183
1806
quick sort mà nhỉ ;-;
2863
41637
21147
bình luận phía trên(cách nào cũng được)
2376
46183
1806
af ok ca