Một chương trình cài đặt trên máy tính được xác định bởi thành phần nào Chọn một câu trả lời a Cấu trúc dữ liệu b Thuật toán c Không phải là các thành phần d Cả hai thành phần Phản hồi Đáp án đúng là.
Một chương trình cài đặt máy tính xác định thành phần Chọn câu trả lời: a Cấu trúc liệu b Thuật tốn c Khơng phải thành phần d Cả hai thành phần Phản hồi Đáp án là: C Cả hai thành phần Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài – Đánh giá thuật toán, mục I, Text Đây định nghĩa độ phức nào? “Được tính tổng số chi phí mặt khơng gian (bộ nhớ) cần thiết sử dụng cho thuật toán” Chọn câu trả lời: a Thời gian b Cả hai lựa chọn sai c Không gian d Cả hai lựa chọn Phản hồi Đáp án là: A Không gian Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài – Đánh giá thuật toán, mục IV, Text Trong giải thuật đệ quy lời giải trực tiếp mà nhờ đến tốn thành phần nào? Chọn câu trả lời: a Cả hai lựa chọn sai b Phần tử neo c Công thức tổng quát d Cả hai lựa chọn Phản hồi Đáp án là: A Phần tử neo Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài – Đánh giá thuật toán, mục V, Text Cho biết kết xuất đoạn chương trình sau: long F(int n) { if ((2*n+1) ==1) return 1; else return (2*n+1)+F(n-1); } void main() { long x=F(3); printf("%ld", x); } Chọn câu trả lời: a 16.00 b c d 16 Phản hồi Đáp án là: D 16 Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài – Đánh giá thuật toán, mục V, Text F(3) = 2*3+1 + f(2) = 16 F(2) = 2*2 + + F(1) = F(1) = 2*1 + + f(0) = F(0) = Cho biết kết đoạn chương trình sau: long f3(int n) { if (n==1) return 1; else return n*n + f3(n-1); } int main() { long x = f3(3); printf("%ld", x); getch(); } Chọn câu trả lời: a 14 b 13 c 16 d 12 Phản hồi Đáp án là: B 14 Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài – Đánh giá thuật toán, mục V, Text F(3) = 3*3 + F3(2) F3(2) = 2*2 + F3(1) F3(1) = Đoạn mã sau làm nhiệm vụ gì? void SXDSSV( int n, SV ds[]){ int min, i, j; SV tg; for( i=0 ; iinfo.thanhtien; return s;} d float TinhTongLuong (List Q){ Node *p; float s = 0; for(p=Q.Head; p!=NULL; p=p->next) s = s + p->info.hsl; return s;} Phản hồi Đáp án là: float TinhTongLuong (List Q){ Node *p; float s = 0; for(p=Q.Head; p!=NULL; p=p->next) s = s + p->info.thanhtien; return s;} Cho đoạn chương trình: void QuickSort( int a[ ], int L , int R ) { int i,j,x; x= a[(L+R)/2]; i = L; j = R; { while ( a[i] < x ) i++; while ( a[j] > x ) j ; if ( i S = S * i = 1*2*3 i = => S = S * i = 1*2*3*4 … Để xác định giải thuật đệ quy cần xác định gì? Chọn câu trả lời: a Phần tử neo b Công thức tổng quát c Cả hai lựa chọn d Cả hai lựa chọn sai Phản hồi Đáp án là: C Cả hai lựa chọn Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài – Đánh giá thuật toán, mục V, Text Cho dãy sau: 42, 23, 74, 11, 65, 58 Dùng phương pháp xếp chèn trực tiếp (Insertion Sort) để xếp tăng dần, sau lần lặp kết dãy nào? Chọn câu trả lời: a 11, 23, 42, 65, 58, 74 b 11, 23, 42, 74, 58, 65 c 11, 23, 58, 65, 42, 74 d 11, 23, 42, 58, 65, 74 Phản hồi Đáp án là: B 11, 23, 42, 58, 65, 74 Tham khảo: Bài – Tìm kiếm xếp – Mục II.1, Bản Hướng dẫn tự học Đoạn mã sau thực nhiệm vụ void SXDSV_InsertionSort( int n, SV ds[]){ int pos,i; SV x; for(i=1;i=0)&&(ds[pos].Tuoi>x.Tuoi)) { ds[pos+1] = ds[pos]; pos ; } ds[pos+1] = x; //chèn x vào dãy }} Chọn câu trả lời: a Thực xếp danh sách SV theo Tuoi tăng dần thuật toán Insertion b Thực xếp danh sách SV theo Tuoi giảm dần thuật toán Insertion c Thực xếp danh sách SV theo Tuoi giảm dần thuật toán Selection d Thực xếp danh sách SV theo Tuoi tăng dần thuật toán Selection Phản hồi Đáp án là: Thực xếp danh sách SV theo Tuoi tăng dần thuật toán Insertion Cho hàm tìm kiếm tuyến tính mảng chiều có n phần tử int Search( int a[], int n, int x) { int i; for(i=0; inext) if(strcmp(p>info.hoten,k)==0) break; return p;} b void TimCBMa(List Q,char k[]){ Node *p; for(p=Q.Head; p!=NULL; p=p->next) if(p->mcb == k) break;} c Node *TimCBMa(List Q,char k[]){ Node *p; for(p=Q.Head; p!=NULL; p=p->next) if(strcmp(p>info.ns,k)==0) break; return p;} d Node *TimCBMa(List Q,int k){ Node *p; for(p=Q.Head; p!=NULL; p=p->next) if(p>info.mcb == k) break; return p;} Phản hồi Đáp án là: Node *TimCBMa(List Q,int k){ Node *p; for(p=Q.Head; p!=NULL; p=p->next) if(p>info.mcb == k) break; return p;} Cho dãy sau: 23, 78, 45, 8, 32, 56 Dùng phương pháp xếp chọn trực tiếp (Selection Sort) để xếp tăng dần, sau lần lặp kết dãy nào? Chọn câu trả lời: a 23, 78, 45, 8, 32, 56 b 8, 23, 78, 45, 32, 56 c 8, 23, 32, 78, 56, 45 d 8, 23, 32, 45, 56, 78 Phản hồi Đáp án là: A 8, 23, 32, 45, 56, 78 Tham khảo: Bài – Các thuật toán xếp phần 2, Mục I, Bản Hướng dẫn tự học Cho dãy sau: 42, 23, 74, 11, 65, 58 Dùng phương pháp xếp phân hoạch (Quick Sort), điểm chốt a[middle] ban đầu là: Chọn câu trả lời: a a[middle] = 23 b a[middle] = 74 c Các đáp án đưa không d a[middle] = 11 Phản hồi Đáp án là: C a[middle] = 74 Tham khảo: Bài – Các thuật toán xếp phần 2, Mục III, Bản Hướng dẫn tự học Đối với thuật toán xếp chọn trực tiếp cho dãy phần tử sau (10 phần tử): 16 60 25 15 45 30 33 20 Cần thực lựa chọn phần tử nhỏ để xếp mảng M có thứ tự tăng dần Chọn câu trả lời: a lần b lần c lần d 10 lần Phản hồi Đáp án là: C lần Tham khảo: Bài – Các thuật toán xếp phần 2, Mục I, Bản Hướng dẫn tự học Đoạn mã cài đặt hủy phần tử đầu danh sách liên kết đơn: void RemoveHead ( LIST &Q ){ Node *p; if (Q.Head != NULL) { p = Q.Head; [1] ………………… free(p); if ( Q.Head == NULL ) Q.Tail = NULL; } } Dòng lệnh cần thiết đặt vào chỗ trống dòng số [1]: Chọn câu trả lời: a Q.Head = NULL; b Q.Head -> next = Q.Head; c Q.Head -> next = NULL; d Q.Head = Q.Head -> next; Phản hồi Đáp án là: B Q.Head = Q.Head -> next; Tham khảo: Bài – Danh sách liên kết đơn, Mục I.1.2, Bản Hướng dẫn tự học Định nghĩa cấu trúc liệu danh sách liên kết đơn mô tả sau: struct Node{ int Key; Node *next; }OneNode; Trong đó, khai báo Node *next; dùng để mô tả Chọn câu trả lời: a Con trỏ trỏ tới phần liệu cuối danh sách b Vùng liên kết quản lý địa phần tử phần tử cuối c Vùng liên kết quản lý địa phần tử d Con trỏ trỏ tới phần liệu Phản hồi Đáp án là: C Vùng liên kết quản lý địa phần tử Tham khảo: Bài – Danh sách liên kết đơn, Mục I.1.1, Bản Hướng dẫn tự học Cho đoạn mã sau: struct CB{ int mcb; char hoten[20]; char ns[12]; float hsl,pc,tt;};struct Node{ CB info; struct Node *next;}; struct List{ Node *head, *tail;}; Khai báo Cấu trúc liệu khai báo CTDL dạng gì? Chọn câu trả lời: a Danh sách liên kết vịng b Danh sách liên kết đơi c Danh sách liên kết vịng đơi d Danh sách liên kết đơn Phản hồi Đáp án là: A Cho Danh sách liên kết đơn chứa danh sách Cán Bộ (CB), Đoạn mã sau thực gì? void InDSCanBo (List Q) { Node *p; for(p=Q.Head; p!=NULL; p=p->next) { System.out.print(“%5d”, p->info.mcb); System.out.print(“%15s”, p->info.hoten); System.out.print(“%10s”, p->info.ns); System.out.print(“%7.1f”, p->info.hsl); System.out.print(“%7.0f”, p->info.pc); } } Chọn câu trả lời: a In họ tên mã cán chứa danh sách b In thơng tin cán có danh sách mà có hệ số lương lớn hớn 3.5 c In đầy đủ thông tin tất cán chứa danh sách Q d Nhập vào từ bàn phím thơng tin đầy đủ cán vào danh sách Q Phản hồi Đáp án là: In đầy đủ thông tin tất cán chứa danh sách Q ... phần tử vào so sánh giá trị phần tử cần thêm vào so với nút xét phần tử cần thêm vào lớn thêm vào vị trí nào? Chọn câu trả lời: a Cả hai phát biểu b Cả hai phát biểu sai c Phần tử bổ sung vào nhánh... tưởng thuật toán xếp InsertionSort b Ý tưởng thuật toán xếp InterchangeSort c Ý tưởng thuật tốn tìm kiếm tuyến tính d Ý tưởng thuật tốn tìm kiếm nhị phân Phản hồi Đáp án là: A Ý tưởng thuật toán... tổng số chi phí mặt tổng thời gian cần thiết để hồn thành thuật tốn, đánh giá dựa vào số lượng thao tác sử dụng thuật toán dựa liệu đầu vào ” Chọn câu trả lời: a Cả hai lựa chọn b Cả hai lựa chọn