sắp xếp tăng dãy
5 9 6 3 1
Cho dãy A gồm các số sau: 4 7 9 1 6 3
Dựa vào thuật toán sắp xếp bằng tráo đổi để được 1 dãy tăng, hãy cho biết sau lần duyệt thứ mấy ta thu được dãy A tăng: 1 3 4 6 7 9
A.3
b.4
c.6
d.5
Cho dãy A= [5, 8, 1, 0, 10, 4, 3]. Viết các chương trình sắp xếp dãy A theo thứ tự tăng dần theo các thuật toán sắp xếp chèn, sắp xếp chọn và sắp xếp nổi bọt.
THAM KHẢO!
1.Thuật toán sắp xếp chèn (Insertion Sort):
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and arr[j] > key:
arr[j + 1] = arr[j]
j -= 1
arr[j + 1] = key
return arr
A = [5, 8, 1, 0, 10, 4, 3]
sorted_A = insertion_sort(A)
print("Dãy A sau khi sắp xếp chèn:", sorted_A)
2. Thuật toán sắp xếp chọn (Selection Sort):
def selection_sort(arr):
for i in range(len(arr)):
min_idx = i
for j in range(i + 1, len(arr)):
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
A = [5, 8, 1, 0, 10, 4, 3]
sorted_A = selection_sort(A)
print("Dãy A sau khi sắp xếp chọn:", sorted_A)
3.Thuật toán sắp xếp nổi bọt (Bubble Sort):
def bubble_sort(arr):
n = len(arr)
for i in range(n - 1):
for j in range(n - 1 - i):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
return arr
A = [5, 8, 1, 0, 10, 4, 3]
sorted_A = bubble_sort(A)
print("Dãy A sau khi sắp xếp nổi bọt:", sorted_A)
Cho dãy A gồm các số sau: 4 7 9 1 6 3
Dựa vào thuật toán sắp xếp bằng tráo đổi để được 1 dãy tăng, hãy cho biết dãy thu được sau lần duyệt 1 và duyệt 2?
dãy số nào sau đây sắp xếp theo thứ tự tăng dần : căn 5 ; -3 ;2,(6) ; 7/3
Dãy số được sắp xếp theo thứ tự tăng dần là: \(-3,\dfrac{7}{3},\sqrt{5},2,\left(6\right)\)
cho dãy số 3; 1; 7; 9; 5
cho phép 3 lần đổi chỗ, mỗi lần được đổi chỗ 2 số bất kì. em hãy sắp xếp lại dãy số trên theo thứ tự tăng dần.
đổi vị trí số 3 và số 1 được 1;3;7;9;5
đổi tiếp vị trí số 5 va số 7 được 1;3;5;9;7
đổi tiêp vị trí số 7 và số 9 được 1;3;5;7;9
Khi đó ta có dãy số được sắp xếp theo thứ tự tăng dần
1/ cho dãy số hữu tỉ 2/3; 4/5; 7/8; 3/4; 9/10; 8/9; 5/6; 6/7
a) hãy sắp xếp số hữu tỉ theo thứ tự tăng dần. nếu a/b là một số thuộc dãy trên thì số tiếp theo là số nào?
b) so sánh a/b với a+1/b+1
2/ so sánh số hữu tỉ 5/8; 17/19; và 22/27
bạ tự là đi minh mới lớp 6 nhá
Cho Dãy A gồmN=8.Dãy A gồm các số nguyênlà : 9 ,11, 3, 25, 1, 18,20, 2.Hãy sử dụng thuật toán sắp xếp tráo đổi( sắp xếp dãy A thành dãy không tăng)
Cách làm: Làm theo thứ tự các bước:
1.Xác định bài toán
2.Ý tưởng
3.Thuật toán( làm 1 trong 2 cách:Liệt kê và sơ đồ khối)
4.Ápdụng làm dãy số trên theo các lần duyệt như trong sách giáo khoa
#include <bits/stdc++.h>
using namespace std;
long long a[8],n,i,j;
int main()
{
n=8;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n-1; i++)
for (j=i+1; j<=n; j++)
if (a[i]<a[j]) swap(a[i],a[j]);
for (i=1; i<=n; i++) cout<<a[i]<<" ";
return 0;
}
Sắp xếp các phân số sau theo thứ tự tăng dần :
1/2 ; 2/3 ; 3/4 ; 4/5 ; 5/6 ; 6/7 ; 7/8 ; 8/9 ; 9/10
\(\dfrac{1}{2};\dfrac{2}{3};\dfrac{3}{4};\dfrac{4}{5};\dfrac{5}{6};\dfrac{6}{7};\dfrac{7}{8};\dfrac{8}{9};\dfrac{9}{10}\)
Sắp xếp các phân số sau theo thứ tự tăng dần :
\(\dfrac{1}{2}\);\(\dfrac{2}{3}\);\(\dfrac{3}{4}\);\(\dfrac{4}{5}\);\(\dfrac{5}{6}\);\(\dfrac{6}{7}\);\(\dfrac{7}{8}\);\(\dfrac{8}{9}\);\(\dfrac{9}{10}\)
Sắp xếp các phân số sau theo thứ tự tăng dần :
1/2 ; 2/3 ; 3/4 ; 4/5 ; 5/6 ; 6/7 ; 7/8 ; 8/9 ; 9/10