Giải Tin học 11 trang 126 Cánh diều
Với Giải Tin học 11 trang 126 trong Bài 8: Lập trình một số thuật toán sắp xếp Tin học lớp 11 Cánh diều hay nhất, ngắn gọn sẽ giúp học sinh dễ dàng trả lời các câu hỏi & làm bài tập Tin 11 trang 126.
Giải Tin học 11 trang 126 Cánh diều
Nhiệm vụ 2 trang 126 Tin học 11: Viết chương trình Phython thực hiện thuật toán sắp xếp nổi bọt.
Lời giải:
Viết chương trình Phython thực hiện thuật toán sắp xếp nổi bọt.
def bubbleSort(arr):
n = len(arr)
#Duyệt qua tất cả các phần tử
for i in range(n-1):
for j in range(0, n-i-1):
#Hoán đổi phần tử nếu nó lớn hơn phần tử sau nó
if arr[j] > arr[j + 1] :
arr[j], arr[j + 1] = arr[j + 1], arr[j]
#Thực thi đoạn mã
arr = [64, 34, 25, 12, 22, 11, 90]
bubbleSort(arr)
for i in range(len(arr)):
print("%d" % arr[i], end=" ")
Nhiệm vụ 3 trang 126 Tin học 11: Em hãy viết chương trình Python thực hiện thuật toán sắp xếp chèn tuyến tính dựa trên mã giả đã cho trong báo học
Lời giải:
Viết chương trình Python thực hiện thuật toán sắp xếp chèn tuyến tính dựa trên mã giả đã cho trong báo học:
void Insertion_Sort(int a[], int n){
int pos, i;
int x;//lưu giá trị a[i] tránh bị ghi đè khi dời chỗ các phần tử
for(i=1; i<n; i++){//đoạn a[0] đã sắp xếp
x = a[i]; pos = i-1;
//tìm vị trí chèn x
while((pos>=0)&&(a[pos]>x)){
//kết hợp dời chỗ các phần tử sẽ đứng sau x trong danh sách mới
a[pos+1] = a[pos];
pos--;
}
a[pos+1] = x;//chèn x vào danh sách
}
}
void main()
{
int a[5] = {8, 4, 1, 6, 5};
Insertion_Sort(a, 5);
cout<<"Mang sau khi sap xep:"<<endl;
for(int i=0;i<5;i++){
cout<<a[i]<<" ";
}
system("pause");
Vận dụng trang 126 Tin học 11: Cho danh sách Bảng điểm là kết quá học tập gồm các cột Họ và tên, điểm Toán, điểm ngữ văn, điểm Tin bọc... Hãy viết chương trình sắp xếp Bảng điểm theo điểm môn Tin học giảm dần.
Gợi ý: Mỗi phân tử của Bảng điểm là một danh sách con, ứng với một học sinh. So sánh theo thành phân điểm Tin học của danh sách con để sắp xếp.
Lời giải:
#include <stdio.h>
#define GIOI "\nXep loai gioi"
#define KHA "\nXep loai kha"
#define TB "\nXep loai trung binh"
#define YEU "\nXep loai yeu"
/*
Format code: Alt + Shift + F
*/
int main()
{
// Nhập điểm 3 môn
float diemToan;
float diemVan;
float diemAnh;
float dtb;
printf("\nNhap diem toan = ");
scanf("%f", &diemToan);
printf("\nNhap diem van = ");
scanf("%f", &diemVan);
printf("\nNhap diem anh = ");
scanf("%f", &diemAnh);
dtb = (diemToan + diemVan + diemAnh) / 3;
printf("\nDTB = %.2f", dtb);
if (dtb < 4)
{
printf(YEU);
}else if (dtb < 6.5){
printf(TB);
}else if(dtb < 8.0){
printf(KHA);
}else{
printf(GIOI);
}
}
Câu hỏi trang 126 Tin học 11: Theo em, thuật toán sắp xếp nổi bọt và thuật toán sắp xếp chèn, thuật toán nào đơn giản và để cài đặt hơn?
Lời giải:
Cả hai thuật toán sắp xếp nổi bọt và sắp xếp chèn đều đơn giản và dễ cài đặt. Tuy nhiên, thuật toán sắp xếp chèn có thể được coi là đơn giản hơn vì nó sử dụng ít phép so sánh hơn so với thuật toán sắp xếp nổi bọt.
Thuật toán sắp xếp chèn thực hiện việc chèn một phần tử vào một mảng đã được sắp xếp trước đó. Với mỗi phần tử trong mảng, nó sẽ so sánh nó với các phần tử đã được sắp xếp trước đó, và chèn phần tử đó vào vị trí thích hợp trong mảng. Điều này đòi hỏi ít phép so sánh hơn so với thuật toán sắp xếp nổi bọt, do đó thuật toán sắp xếp chèn có hiệu suất tốt hơn khi sắp xếp một mảng lớn.
Trong khi đó, thuật toán sắp xếp nổi bọt cần thực hiện nhiều phép so sánh hơn và có thể không hiệu quả khi sắp xếp mảng lớn. Nó hoạt động bằng cách so sánh các cặp phần tử liên tiếp trong mảng và đổi chỗ chúng nếu chúng không được sắp xếp đúng thứ tự. Vì vậy, trong nhiều trường hợp, thuật toán sắp xếp chèn được ưa chuộng hơn do hiệu quả và tính đơn giản của nó.
Xem thêm lời giải bài tập Tin học lớp 11 Cánh diều hay nhất, ngắn gọn khác:
Tin học 11 Bài 10: Thiết kế chương trình từ trên xuống và phương pháp mô đun hoá
Tin học 11 Bài 11: Thực hành thiết kế và lập trình theo mo đun
Tin học 11 Bài 12: Thực hành thiết kế và lập trình theo mo đun tiếp theo
Tin học 11 Bài 13: Thực hành thiết kế và lập trình theo mo đun tiếp theo
Xem thêm các tài liệu học tốt lớp 11 hay khác:
- Giải sgk Tin học 11 Cánh diều
- Giải Chuyên đề Tin học 11 Cánh diều
- Giải SBT Tin học 11 Cánh diều
- Giải lớp 11 Cánh diều (các môn học)
- Giải lớp 11 Kết nối tri thức (các môn học)
- Giải lớp 11 Chân trời sáng tạo (các môn học)
Tủ sách VIETJACK shopee lớp 10-11 cho học sinh và giáo viên (cả 3 bộ sách):
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.
- Soạn văn 11 Cánh diều (hay nhất)
- Soạn văn 11 Cánh diều (ngắn nhất)
- Giải sgk Toán 11 - Cánh diều
- Giải Tiếng Anh 11 Global Success
- Giải sgk Tiếng Anh 11 Smart World
- Giải sgk Tiếng Anh 11 Friends Global
- Giải sgk Vật Lí 11 - Cánh diều
- Giải sgk Hóa học 11 - Cánh diều
- Giải sgk Sinh học 11 - Cánh diều
- Giải sgk Lịch Sử 11 - Cánh diều
- Giải sgk Địa Lí 11 - Cánh diều
- Giải sgk Giáo dục KTPL 11 - Cánh diều
- Giải sgk Tin học 11 - Cánh diều
- Giải sgk Công nghệ 11 - Cánh diều
- Giải sgk Hoạt động trải nghiệm 11 - Cánh diều
- Giải sgk Giáo dục quốc phòng 11 - Cánh diều
- Giải sgk Âm nhạc 11 - Cánh diều