Tải bản đầy đủ (.docx) (26 trang)

Cấu trúc dữ liệu và giải thuật

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (368.38 KB, 26 trang )

CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬTU TRÚC DỮ LIỆU VÀ GIẢI THUẬT LIỆU VÀ GIẢI THUẬTU VÀ GIẢI THUẬTI THUẬTT
BÀI LUYỆU VÀ GIẢI THUẬTN TẬTP 1

Câu Hỏii 1.
Kiểuu truy cậpp các phầnn tử trong mộtt mảngng là kiểuu truy cậpp nào trong các kiểuu dướii đây?
Đáp án đúng là: Kiểuu truy cậpp ngẫu nhiên.u nhiên.
Vì: Có thểu truy cậpp ngẫu nhiên.u nhiên đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n các phầnn tử trong mảngng bằng chỉ số của phần tử đó trong ng chỉ số của phần tử đó trong số của phần tử đó trong của phần tử đó trong a phầnn tử đó trong
mảngng.
Câu Hỏii 2. Đâu là mộtt trong nhữngng tiêu chí khi chọnn ngơn ngững diễnn đạtt giảngi thuậpt ?
Đáp án đúng là: Gầnn vớii ngơn ngững lậpp trình hiện có.n có.
Vì: Gầnn vớii ngơn ngững lậpp trình thì dễn triểun khai phầnn mềmm
Câu Hỏii 3. Đâu là kiểuu dững liện có.u cơ bản trong các kiểu dữ liệu dưới đây? bảngn trong các kiểuu dững liện có.u dướii đây?
Đáp án đúng là: Kiểuu số của phần tử đó trong ngun.
Vì: Kiểuu dững liện có.u cơ bản trong các kiểu dữ liệu dưới đây? bảngn là:
-Integer (số của phần tử đó trong nguyên)
-Real (số của phần tử đó trong thực)c)
-Char (ký tực))
-Boolean (logic)
-Pointer (con trỏ))
Kiểuu dững liện có.u trừuu tượngng là:
-Record (bảngn ghi)
-Array (mảngng)
Câu Hỏii 4. Kiểuu dững liện có.u cơ bản trong các kiểu dữ liệu dưới đây? bảngn là gì?
Đáp án đúng là: Là kiểuu dững liện có.u có sẵn trên hầu hết các máy tính và được hỗ trợ trong hầu hết n trên hầnu hến các phần tử trong mảng bằng chỉ số của phần tử đó trong t các máy tính và đượngc hỗ trợ trong hầu hết trợng trong hầnu hến các phần tử trong mảng bằng chỉ số của phần tử đó trong t
các ngơn ngững lậpp trình.
Vì: Kiểuu dững liện có.u cơ bản trong các kiểu dữ liệu dưới đây? bảngn là các kiểuu dững liện có.u có sẵn trên hầu hết các máy tính và được hỗ trợ trong hầu hết n trên hầnu hến các phần tử trong mảng bằng chỉ số của phần tử đó trong t các máy tính, và đượngc hỗ trợ trong hầu hết trợng trong
hầnu hến các phần tử trong mảng bằng chỉ số của phần tử đó trong t các ngơn ngững lậpp trình. Chúng bao gồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu m kiểuu dững liện có.u số của phần tử đó trong nguyên (INTEGER), kiểuu dững liện có.u
số của phần tử đó trong thực)c (REAL), kiểuu dững liện có.u giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn logic (BOOLEAN), kiểuu dững liện có.u ký tực) (CHAR). Ngồi ra cịn
mộtt kiểuu dững liện có.u nữnga hay đượngc sử dụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).ng trong các thuậpt tốn là kiểuu dững liện có.u con trỏ) (POINTER).
Câu Hỏii 5. Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn của phần tử đó trong a “con trỏ)” là gì?
Đáp án đúng là: Là đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn a chỉ số của phần tử đó trong đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n mộtt vùng bột nhới nhất định.t đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn nh.


Vì: Giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn của phần tử đó trong a “con trỏ)” là đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn a chỉ số của phần tử đó trong đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n mộtt vùng bột nhới nhất định.t đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh.
Câu Hỏii 6. Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng của phần tử đó trong a phép MOD hai số của phần tử đó trong ngun có kiểuu gì?
Đáp án đúng là: Kiểuu số của phần tử đó trong ngun.
Vì: Phép MOD là phép chia lất định.y dư nguyên của phần tử đó trong a 2 số của phần tử đó trong nguyên, do đó giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn của phần tử đó trong a phép MOD là số của phần tử đó trong
nguyên.
Câu Hỏii 7. Chọnn đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh nghĩa đúng nhất định.t cho từu Giảngi thuậpt?
Đáp án đúng là: Là mộtt tậpp hợngp hữngu hạtn của phần tử đó trong a các chỉ số của phần tử đó trong thị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn hay phươ bản trong các kiểu dữ liệu dưới đây?ng cách đượngc đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh nghĩa rõ
ràng cho viện có.c hồn tất định.t mộtt số của phần tử đó trong sực) viện có.c từu mộtt trạtng thái ban đầnu cho trướic; khi các chỉ số của phần tử đó trong thị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn này
đượngc áp dụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).ng triện có.t đểu thì sẽ dẫu nhiên.n đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng sau cùng như đã dực) đoán
Câu Hỏii 8. Kiểuu dững liện có.u con trỏ) đượngc dùng đểu làm gì?
Đáp án đúng là: Đượngc dùng đểu lưu các con trỏ) đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n bất định.t kỳ mộtt kiểuu dững liện có.u nào khác.
Câu Hỏii 9. Yêu cầnu khi chọnn kiểuu dững liện có.u cho chươ bản trong các kiểu dữ liệu dưới đây?ng trình là?
Đáp án đúng là: Kiểuu dững liện có.u cầnn sát vớii kiểuu giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn của phần tử đó trong a các thơng tin đó trong thực)c tến các phần tử trong mảng bằng chỉ số của phần tử đó trong .
Câu Hỏii 10. Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t ý nghĩa của phần tử đó trong a kiểuu dững liện có.u logic (BOOLEAN)
Đáp án đúng là: Dùng đểu biểuu diễnn các giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn logic bao gồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu m 2 giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra còn đúng (true) và sai (false).


Vì: Kiểuu dững liện có.u logic đượngc dùng đểu biểuu diễnn các giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn logic, bao gồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu m hai giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn là đúng (TRUE)
và sai (FALSE). Kiểuu dững liện có.u này đượngc sử dụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).ng đểu biểuu diễnn kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng so sánh giữnga các giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn
thuộtc kiểuu dững liện có.u số của phần tử đó trong (nguyên hoặc thực).c thực)c).
Câu Hỏii 11. Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t kiểuu dững liện có.u trừuu tượngng là gì?
Đáp án đúng là: Là kiểuu dững liện có.u mớii do người dùng tự định nghĩa.i dùng tực) đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh nghĩa.
Câu Hỏii 12. Kiểuu dững liện có.u nào thuộtc loạti kiểuu dững liện có.u cơ bản trong các kiểu dữ liệu dưới đây? bảngn?
Đáp án đúng là: POINTER.
Câu hỏii 13. Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t ưu điểum của phần tử đó trong a các kiểuu dững liện có.u trừuu tượngng.
Đáp án đúng là: Giúp cho người dùng tự định nghĩa.i lậpp trình khơng phảngi q quan tâm đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n các cách thức biểu diễn c biểuu diễnn
cụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER). thểu các dững liện có.u đó trên máy tính.
TUẦN 2N 2
Câu Hỏii 1
Cho danh sách L = (1, 8, 9, 2, 4, 0, 6, 7, 5). Thủa phần tử đó trong tụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c DSC_L(Pos1; Pos2: position ;

var List: ListType) đểu đưa ra mộtt danh sách con của phần tử đó trong a List bắtt đầnu từu vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí Pos1 đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí Pos2 và tr
ảng giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn cho List. Thủa phần tử đó trong tụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c Delete_L(Pos: position ;
var List: ListType) đểu xóa mộtt phầnn tử tạti vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn trí Pos khỏ)i danh sách List. Thủa phần tử đó trong tụng trong các thuật tốn là kiểu dữ liệu con trỏ (POINTER).c Insert_L(Pos:
position ; X: Item;
var List: ListType) đểu thêm mộtt phầnn tử X vào vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn trí Pos trong danh sách List. Khi đó nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u ta thực)c hi
ện có.n liên tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p DSC_L(2,7,L), Delete_L (2,L), Insert_L(2,3,L) thì kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng sẽ đượngc danh sách L như sau?
Đáp án đúng là: (8, 3, 2, 4, 0, 6)
Vì: Lầnn thức biểu diễn nhất định.t thực)c hiện có.n hàm L = DSC_E(2,7,L) = (8, 9, 2, 4, 0, 6);
Lầnn thức biểu diễn hai thực)c hiện có.n hàm L = Delete_L (2,L) = (8, 2, 4, 0, 6);
Lầnn thức biểu diễn ba thực)c hiện có.n hàm L = Insert_E(2,3,L) = (8, 3, 2, 4, 0, 6); do đó đáp án là (8, 3, 2, 4, 0, 6).
Câu Hỏii 2
Vớii cất định.u trúc dững liện có.u như sau
typedef struct DNode
{int Key;
DNode * NextNode;
DNode * PreNode;
} DOneNode;
typedef DOneNode * DPointerType;
typedef struct DLLPairNode
{DPointerType DLLFirst;
DPointerType DLLLast;
} DLLPType;
Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t hàm sau dùng đểu làm gì?
void DLLTravelling (DLLPType DList)
{DPointerType CurrNode = DList.DLLFirst;
while (CurrNode != NULL)
{cout << CurrNode->Key;
CurrNode = CurrNode->NextNode ;
}



return;
}
Đáp án đúng là: Duyện có.t qua các nút trong danh sách và hiểun thị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nộti dung của phần tử đó trong a mỗ trợ trong hầu hết i nút.
Vì:
Thao tác DPointerType CurrNode = DList.DLLFirst; khởi tạo con trỏ CurrNode trỏ tới đầu danh i tạto con tr ỏ) CurrNode tr ỏ) t ớii đ ầnu danh
sách DList;
Thao tác
while (CurrNode != NULL)
{ cout << CurrNode->Key;
CurrNode = CurrNode ->NextNode
}
Tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong n hành duyện có.t các phầnn tử của phần tử đó trong a danh sách, duyện có.t đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n phầnn tử nào thì hiểun thị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn nộti dung của phần tử đó trong a
phầnn tử đó qua lện có.nh Cout.
Câu Hỏii 3. Cho danh sách L = (1, 5, 3, 2, 4, 0, 6). Thủa phần tử đó trong tụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c Delete_L( Pos: position ; var List: ListType)
đểu xóa mộtt phầnn tử tạti vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí Pos khỏ)i danh sách List. Khi đó nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u ta thực)c hiện có.n liên tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p
Delete_L(2,L), Delete_L(4,L) thì kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng sẽ đượngc danh sách L như sau?
Đáp án đúng là: (1, 3, 2, 0, 6)
Vì:
Lầnn thức biểu diễn nhất định.t thực)c hiện có.n hàm L = Delete_E(2,L) = (1, 3, 2, 4, 0, 6);
Lầnn thức biểu diễn hai thực)c hiện có.n hàm L = Delete_E(4,L) = (1, 3, 2, 0, 6); do đó đáp án là (1, 3, 2, 0, 6).
Câu Hỏii 4.
Khi cài đặtt danh sách bằngng mảng,ng, vớii độ dài là n thì thao tác chèn một phầnn tử vào danh sá
ch có độ phứcc tạp:p:
Đáp án đúng là: O(n)
Vì: Chỉ số của phần tử đó trong cầnn thực)c hiện có.n mộtt vịng lặc thực).p. Đểu thực)c hiện có.n thao tác chèn vào vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí thức biểu diễn p, ta phảngi dị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn ch
chuyểun các phầnn tử từu thức biểu diễn p đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n n của phần tử đó trong a mảngng sang vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn trí mớii lầnn lượngt từu thức biểu diễn p + 1 đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n thức biểu diễn n + 1,
sau đó mớii chèn phầnn tử cầnn chèn vào vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí thức biểu diễn p.
Câu Hỏii 5. Lựa chọn định nghĩa đúng nhất về danh sách?a chọn định nghĩa đúng nhất về danh sách?n định nghĩa đúng nhất về danh sách?nh nghĩa đúng nhất về danh sách?t về danh sách? danh sách?
Đáp án đúng là: Danh sách là tậpp hợngp các phầnn tử có kiểuu dững liện có.u xác đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh và giữnga chúng có mộtt

mố của phần tử đó trong i liên hện có. nào đó.
Câu Hỏii 6. Đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn nh nghĩa cất định.u trúc dững liện có.u của phần tử đó trong a danh sách liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t đơi đượngc mơ tảng như sau:
Typedef Kieu_du_lieu ElementType;
typedef struct NodeType
{
ElementType Data;
struct NodeType *next, *prev;
}Node ;
Hãy chọnn mô tảng đúng nhất định.t cho khai báo NodeType *next
Đáp án đúng là: Vùng liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảngn lý đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn a chỉ số của phần tử đó trong phầnn tử kến các phần tử trong mảng bằng chỉ số của phần tử đó trong tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p.
Vì: Trong danh sách liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t mỗ trợ trong hầu hết i nút gồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu m 2 thành phầnn, đây là phầnn dùng đểu chỉ số của phần tử đó trong liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t và next
thười dùng tự định nghĩa.ng dùng cho phầnn tử kến các phần tử trong mảng bằng chỉ số của phần tử đó trong tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p
Câu Hỏii 7. Trong định nghĩa đúng nhất về danh sách?nh nghĩa danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?t đôi, mỗi nút gồm bao nhiêu thành phần?i nút gồm bao nhiêu thành phần?m bao nhiêu thành ph ầnn?
Đáp án đúng là: 3 thành phầnn.
Vì:3 thành phầnn, trong đó:


1. phầnn Data: chức biểu diễn a thông tin vềm phầnn tử của phần tử đó trong a danh sách
2. phầnn Link: chức biểu diễn a đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn a chỉ số của phần tử đó trong vềm mộtt nút kến các phần tử trong mảng bằng chỉ số của phần tử đó trong tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p trong danh sách
3. phầnn Prev: chức biểu diễn a đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn a chỉ số của phần tử đó trong vềm mộtt nút liềmn trướic trong danh sách
Câu Hỏii 8. Định nghĩa đúng nhất về danh sách?nh nghĩa nào là đúng vớii danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?t?
Đáp án đúng là: Danh sách liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t là tậpp hợngp các phầnn tử mà giữnga chúng có m ộtt s ực) n ố của phần tử đó trong i k ến các phần tử trong mảng bằng chỉ số của phần tử đó trong t vớii
nhau thơng qua vùng liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t của phần tử đó trong a chúng.
Câu Hỏii 9. Trong vi c ứcng dụng danh sách liên kết để tính tốn giá trị của một đa thức 1 ng danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?t để tính tốn giá trị của một đa thức 1 tính tốn giá trịnh nghĩa đúng nhất về danh sách? của một đa thức 1 a một đa thứcc 1
n b c n, để tính toán giá trị của một đa thức 1 l u tr đa thứcc trong danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?t thì mỗi nút gồm bao nhiêu thành phần?i nút của một đa thức 1 a danh sách th ờng có ng có
mất về danh sách?y tr ờng có ng:
Đáp án đúng là: 3.
Vì: Mộtt trười dùng tự định nghĩa.ng lưu trững hện có. số của phần tử đó trong khác khơng của phần tử đó trong a các hạtng thức biểu diễn c, mộtt trười dùng tự định nghĩa.ng chức biểu diễn a số của phần tử đó trong mũ t ươ bản trong các kiểu dữ liệu dưới đây?ng ức biểu diễn ng
và mộtt trười dùng tự định nghĩa.ng chức biểu diễn a đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn a chỉ số của phần tử đó trong của phần tử đó trong a nút tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p theo trong danh sách
Câu Hỏii 10. Cho danh sách L = (0, 3, 7, 2, 4, 9). Đâu là danh sách con của một đa thức 1 a L?

Đáp án đúng là: (0, 3, 7, 2)
Vì: (0, 3, 7, 2) là của phần tử đó trong a danh sách L. Anh/Chị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn cầnn phân biện có.t danh sách con và dãy con
Câu Hỏii 2. Một danh sách rỗi nút gồm bao nhiêu thành phần?ng khi:
Đáp án đúng là: Đột dài của phần tử đó trong a danh sách bằng chỉ số của phần tử đó trong ng 0.
Câu Hỏii 5. Lựa chọn định nghĩa đúng nhất về danh sách?a chọn định nghĩa đúng nhất về danh sách?n câu đúng nhất về danh sách?t về danh sách? danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?t đôi (Doubly Linked List)
Đáp án đúng là: Vùng liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t của phần tử đó trong a mộtt phầnn tử trong danh sách liên đơi có 02 mố của phần tử đó trong i liên k ến các phần tử trong mảng bằng chỉ số của phần tử đó trong t, 01
vớii phầnn tử trướic và 01 vớii phầnn tử sau nó trong danh sách.
Câu Hỏii 9. Biể tính tốn giá trị của một đa thức 1 u diễnn danh sách bằngng mảng,ng đ ợcc mô tảng, nh sau:
#define Max_Size N
typedef Kieu_du_lieu E_Type;
struct ListType
{E_Type Element[Max_Size];
int Size;
} List;
Điềmu kiện có.n danh sách đầny là:
Đáp án đúng là: List.Size = Max_Size.

TUẦN 2N 3
Câu Hỏii 1. Khi dùng Stack đ ợcc cài đặtt bằngng mảng,ng để tính tốn giá trị của một đa thức 1 đổii số tựa chọn định nghĩa đúng nhất về danh sách? nhiên N = 70 (h cơ số 10)
sang h nhịnh nghĩa đúng nhất về danh sách? phân thì số phầnn tử tối thiể tính tốn giá trị của một đa thức 1 u của một đa thức 1 a mảng,ng phảng,i là bao nhiêu?
Đáp án đúng là: 7
Vì:(70)10 = (1000110)2 có 7 phân tử dạtng nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân, số của phần tử đó trong phầnn tử tố của phần tử đó trong i thiểuu của phần tử đó trong a mảngng phảngi là 7.


Câu Hỏii 2. Cất về danh sách?u trúc d li u nào t ơng ứcng vớii nguyên lý LIFO.
Đáp án đúng là: Stack.
Câu Hỏii 3. Cho biể tính tốn giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng Balan nh sau: abc +* de /- vớii các giá trịnh nghĩa đúng nhất về danh sách? a=1; b=2;
c=3; d=8; e=4; thì giá trịnh nghĩa đúng nhất về danh sách? của một đa thức 1 a biể tính tốn giá trị của một đa thức 1 u thứcc là:
Đáp án đúng là: 3
Vì: Viện có.c tính giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn của phần tử đó trong a biểuu thức biểu diễn c ởi tạo con trỏ CurrNode trỏ tới đầu danh dạtng biểuu thức biểu diễn c Ba Lan đượngc thực)c hiện có.n: biểuu thức biểu diễn c đượngc đọnc

từu trái sang phảngi cho đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n khi tìm đượngc mộtt toán tử. Tạti thời dùng tự định nghĩa.i điểum đó, hai tốn hạtng cu ố của phần tử đó trong i cùng
đượngc đọnc kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t hợngp vớii toán tử này.
Biểuu thức biểu diễn c Balan dạtng: abc +* de /Vớii các giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn abcde đầnu bài cho ta có: 1 2 3 +* 8 4 /Áp dụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).ng nguyên tắtc trên: 1 * (2+3) - (8/4) = 3
Câu Hỏii 4. Cho biể tính tốn giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng thông th ờng có ng: (a+b)*(c-(d-e))
Đâu là biểuu diễnn biểuu thức biểu diễn c này dướii dạtng biểuu thức biểu diễn c Balan?
Đáp án đúng là: ab + cde --*
Vì: Biểuu diễnn biểuu thức biểu diễn c số của phần tử đó trong họnc dạtng thơng thười dùng tự định nghĩa.ng sang dạtng biểuu thức biểu diễn c Balan là không cầnn dùng
đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n các dất định.u ngoặc thực).c và ln thực)c hiện có.n từu trái sang phảngi.
Câu Hỏii 5. Trong vi c cài đặtt ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p bằngng mảng,ng A[…],
ta sử dụng danh sách liên kết để tính tốn giá trị của một đa thức 1 ng một biết đôi, mỗi nút gồm bao nhiêu thành phần?n top_id để tính tốn giá trị của một đa thức 1 l u gi đỉnhnh của một đa thức 1 a ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p, nết đôi, mỗi nút gồm bao nhiêu thành phần?u hi n tạp:i ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p ch a có p
hầnn tử thì giá trịnh nghĩa đúng nhất về danh sách? của một đa thức 1 a top_id là bao nhiêu?
Đáp án đúng là: -1.
Vì: Khi đó, theo quy ướic ngăn xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p chưa có phầnn tử nào (ngăn xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p r ỗ trợ trong hầu hết ng) thì top_id = -1
Câu Hỏii 6. Cho biể tính tốn giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng Balan nh sau: 1 2 3 4 *- + 5 6 4 8 – – +
*. Vi c tính tốn giá trịnh nghĩa đúng nhất về danh sách? biể tính tốn giá trị của một đa thức 1 u thứcc này khi dùng Stack đ ợcc cài đặtt bằngng mảng,ng thì số phầnn t
ử tối thiể tính tốn giá trị của một đa thức 1 u của một đa thức 1 a mảng,ng phảng,i là bao nhiêu?
Đáp án đúng là: 5
Vì: Vớii các bướic thực)c hiện có.n biểuu thức biểu diễn c Balan: 1 2 3 4 *- + 5 6 4 8 – – + *. Ta thất định.y, khi thực)c hiện có.n biểuu
thức biểu diễn c thì số của phần tử đó trong tốn hạtng trong stack tạti mộtt thời dùng tự định nghĩa.i điểum tố của phần tử đó trong i đa là 5 phầnn tử (-9,5,6,4,8). Do đó, đáp án
đúng là 5.
Câu Hỏii 7.
Trong vi c cài đặtt ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p bằngng mảng,ng A[…], nết đôi, mỗi nút gồm bao nhiêu thành phần?u hi n tạp:i ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p có n phầnn tử thì phầnn
tử mớii nhất về danh sách?t vừaa đ ợcc đ a vào ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p vịnh nghĩa đúng nhất về danh sách? trí nào trong mảng,ng?
Đáp án đúng là: A[n-1].
Vì: Khi sử dụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).ng mảngng 1 chiềmu A[] đểu biểuu diễnn ngăn xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p thì phầnn tử đầnu tiên A[0] của phần tử đó trong a mảngng A[]
là đáy ngăn xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p. Do đó, phầnn tử mớii nhất định.t vừua đượngc đưa vào ngăn xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p sẽ có vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí A[n-1] trong
mảngng A[] đã có n phầnn tử.
Câu Hỏii 8. Vi c cài đặtt ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p bằngng mảng,ng đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n qua khai báo d ớii đây:
#define max N
typedef int ElementType;

struct Stack
{
int Top_id;
ElementType Element[max];
};
Stack S;


Ý nghĩa đúng nhất định.t của phần tử đó trong a S là:
Đáp án đúng là: Tên của phần tử đó trong a Stack.
Câu Hỏii 9. Cho biể tính tốn giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng thông th ờng có ng: a * (b + c) - d/e
Đâu là biểuu diễnn biểuu thức biểu diễn c này dướii dạtng biểuu thức biểu diễn c Balan?
Đáp án đúng là: abc + * de /Vì: Biểuu diễnn biểuu thức biểu diễn c số của phần tử đó trong họnc dạtng thông thười dùng tự định nghĩa.ng sang dạtng biểuu thức biểu diễn c Balan
là không cầnn dùng đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n các dất định.u ngoặc thực).c và ln thực)c hiện có.n từu trái sang phảngi.
Câu Hỏii 10. Cho biể tính tốn giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng thơng th ờng có ng: (a+b)*(c-(d/e))
Đâu là biểuu diễnn biểuu thức biểu diễn c này dướii dạtng biểuu thức biểu diễn c Balan?
Đáp án đúng là: ab + cde /-*
Vì: Biểuu diễnn biểuu thức biểu diễn c số của phần tử đó trong họnc dạtng thơng thười dùng tự định nghĩa.ng sang dạtng biểuu thức biểu diễn c Balan là không cầnn dùng
đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n các dất định.u ngoặc thực).c và luôn thực)c hiện có.n từu trái sang phảngi.
Câu Hỏii 1. Cho biể tính toán giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng Balan nh sau: 1 2 3 4 *- + 5 6 4 8 – – +
*. Vi c tính tốn giá trịnh nghĩa đúng nhất về danh sách? biể tính toán giá trị của một đa thức 1 u thứcc này khi dùng Stack đ ợcc cài đặtt bằngng mảng,ng thì phầnn tử đ
ợcc đ y vào Stack lầnn thức 8 có giá trịnh nghĩa đúng nhất về danh sách? là bao nhiêu?
Đáp án đúng là: 5
Vì: Vớii biểuu thức biểu diễn c Balan:
1 2 3 4 *- + 5 6 4 8 – – + *
Ta thất định.y, viện có.c tính tốn giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn biểuu thức biểu diễn c này khi dùng Stack đượngc cài đặc thực).t bằng chỉ số của phần tử đó trong ng mảngng thì phầnn tử đ
ượngc đẩyy vào Stack lầnn thức biểu diễn 8 có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn 5. Cụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER). thểu:

Câu Hỏii 7. Vi c cài đặtt ngăn xết đôi, mỗi nút gồm bao nhiêu thành phần?p bằngng mảng,ng đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n qua khai báo d ớii đây:
#define max N

typedef int ElementType;
struct Stack
{
int Top_id;
ElementType Element[max];
};


Stack S;
Ý nghĩa đúng nhất định.t của phần tử đó trong a ElementType là:
Chọnn mộtt:

A.
Số của phần tử đó trong phầnn tử hiện có.n thời dùng tự định nghĩa.i của phần tử đó trong a Stack

B.
Chức biểu diễn a các phầnn tử của phần tử đó trong a Stack

C.
Vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn trí đỉ số của phần tử đó trong nh hiện có.n tạti của phần tử đó trong a Stack

D.
Kiểuu dững liện có.u của phần tử đó trong a các phầnn tử trong Stack
Đáp án đúng là: Kiểuu dững liện có.u của phần tử đó trong a các phầnn tử trong Stack.
Câu Hỏii 8. Cho biể tính tốn giá trị của một đa thức 1 u thứcc số họn định nghĩa đúng nhất về danh sách?c dạp:ng Balan nh sau: 1 2 3 4 *- + 5 6 4 8 – – +
*. Vi c tính tốn giá trịnh nghĩa đúng nhất về danh sách? biể tính tốn giá trị của một đa thức 1 u thứcc này khi dùng Stack đ ợcc cài đặtt bằngng mảng,ng thì phầnn tử đ
ợcc đ y vào Stack lầnn thức 10 có giá trịnh nghĩa đúng nhất về danh sách? là bao nhiêu?
Đáp án đúng là: 4
Vì: Vớii biểuu thức biểu diễn c Balan:
1 2 3 4 *- + 5 6 4 8 – – + *

Ta thất định.y, viện có.c tính toán giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn biểuu thức biểu diễn c này khi dùng Stack đượngc cài đặc thực).t bằng chỉ số của phần tử đó trong ng mảngng thì phầnn tử đ
ượngc đẩyy vào Stack lầnn thức biểu diễn 10 có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn 4. Cụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER). thểu: XEM BẢNG TRÊNNG TRÊN

TUẦN 2N 4
Câu Hỏii 1. Khi lất về danh sách?y ra một phầnn tử của một đa thức 1 a hàng đợci thì phầnn tử đó ở vị trí: vịnh nghĩa đúng nhất về danh sách? trí:
Đáp án đúng là: Đầnu tiên của phần tử đó trong a hàng đợngi.
Câu Hỏii 2. Để tính tốn giá trị của một đa thức 1 cài đặtt thàng đợci bằngng danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?t, tr ớic tiên ta phảng,i định nghĩa đúng nhất về danh sách?nh nghĩa kiể tính tốn giá trị của một đa thức 1 u
phầnn tử cho danh sách. Mỗi nút gồm bao nhiêu thành phần?i phầnn tử của một đa thức 1 a danh sách liên kết đơi, mỗi nút gồm bao nhiêu thành phần?t phảng,i có bao nhiêu tr ờng có ng:
Đáp án đúng là: 2
Vì: Đểu cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng danh sách liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t, trướic tiên ta phảngi đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh nghĩa kiểuu phầnn t ử cho
danh sách. Mỗ trợ trong hầu hết i phầnn tử của phần tử đó trong a danh sách liên kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t phảngi có 2 trười dùng tự định nghĩa.ng:
- 1 trười dùng tự định nghĩa.ng đểu lưu thông tin vềm phầnn tử trong hàng đợngi (kiểuu ELEMENT).
- 1 con trỏ) đểu chỉ số của phần tử đó trong tớii phầnn tử tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p theo trong danh sách.


Câu Hỏii 3. Cất về danh sách?u trúc d li u nào khi cài đặtt bằngng mảng,ng ta phảng,i cầnn 2 biết đôi, mỗi nút gồm bao nhiêu thành phần?n vịnh nghĩa đúng nhất về danh sách? trí để tính toán giá trị của một đa thức 1 quảng,
lý danh sách các phầnn tử
Đáp án đúng là: Hàng đợngi.
Vì:Khi cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng mảngng, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u ta cầnn 2 biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí: biến Tn T thểu hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đi, biến Tn H thểu
hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đầnu.
Tham khảng,o: Giáo trình Cất định.u trúc dững liện có.u và giảngi thuậpt, Bài 4, mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 4.3.1. Cài đặc thực).t Hàng đợngi bằng chỉ số của phần tử đó trong ng
mảngng
Câu trảng lời dùng tự định nghĩa.i đúng là: Hàng đợngi
Câu Hỏii 4. Vi c cài đặtt hàng đợci bằngng mảng,ng đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n qua khai báo d ớii đây:
#define max N
typedef int ELEMENT;
struct QUEUE_ARRAY
{
ELEMENT ele[max];
int capacity, H, T, S ;

} q;
Ý nghĩa đúng nhất định.t của phần tử đó trong a ELEMENT là:
Đáp án đúng là: Kiểuu dững liện có.u của phần tử đó trong a các phầnn tử trong Hàng đợngi.
Vì: vớii cách cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng mảngng trên:
- ELEMENT: Kiểuu dững liện có.u của phần tử đó trong a các phầnn tử trong Hàng đợngi.
- int: kiểuu dững liện có.u của phần tử đó trong a biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n H chỉ số của phần tử đó trong vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đầnu, T chỉ số của phần tử đó trong vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn trí đi và S chỉ số của phần tử đó trong số của phần tử đó trong phầnn tử hiện có.n thời dùng tự định nghĩa.i của phần tử đó trong a hàng
đợngi.
Câu Hỏii 5.
Vi c bổi sung thêm phầnn tử vào hàng đợci đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n bằngng đoạp:n mã d ớii đây:
void ENQUEUE(QUEUE_ARRAY q, ELEMENT e)
{
if (IS_FULL(q)!= 0)
printf("hang doi day khong the chen them");
else{
if (q.T == q.capacity–1)
q.T=0;
else
…………..;
q.ele[q.T]=e;
q.S=q.S+1;
}
}
Hãy lực)a chọnn câu trảng lời dùng tự định nghĩa.i đúng nhất định.t nộti dung điềmn vào chỗ trợ trong hầu hết trố của phần tử đó trong ng (.........) của phần tử đó trong a đoạtn mã trên:
Đáp án đúng là: q.T=q.T+1


Vì: Khi b' sung thêm phầnn tử vào hàng đợngi, biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n T chỉ số của phần tử đó trong vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đi của phần tử đó trong a hàng đợngi sẽ tăng thêm 1.
Câu Hỏii 6. Vi c lất về danh sách?y một phầnn tử từa hàng đợci đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n bằngng đoạp:n mã d ớii đây:
ELEMENT DEQUEUE(QUEUE_ARRAY q)
{

ELEMENT e;
if (IS_EMPTY(q)!= 0)
printf("hang doi rong khong the lay phan tu ra");
else
{
e = q.ele[q.H];
q.H =q.H + 1;
q.S = ........;
if (q.H == q.capacity)
q.H = 0;
}
return e;
}
Hãy lực)a chọnn câu trảng lời dùng tự định nghĩa.i đúng nhất định.t nộti dung điềmn vào chỗ trợ trong hầu hết trố của phần tử đó trong ng (.........) của phần tử đó trong a đoạtn mã trên:
Đáp án đúng là: q.S - 1.
Vì: khi lất định.y mộtt phầnn tử từu hàng đợngi, biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n S chỉ số của phần tử đó trong số của phần tử đó trong phầnn tử hiện có.n thời dùng tự định nghĩa.i của phần tử đó trong a hàng đợngi q sẽ giảngm đi 1
nên: q.S = q.S – 1;
Tham khảng,o: Giáo trình Cất định.u trúc dững liện có.u và giảngi thuậpt, Bài 4, mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 4.3.1. Cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng
mảngng
Câu trảng lời dùng tự định nghĩa.i đúng là: q.S - 1
Câu Hỏii 7. Vi c cài đặtt hàng đợci bằngng mảng,ng đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n qua khai báo d ớii đây:
#define max N
typedef int ELEMENT;
struct QUEUE_ARRAY
{
ELEMENT ele[max];
int capacity, H, T, S;
} q;
Ý nghĩa đúng nhất định.t của phần tử đó trong a S là:
Đáp án đúng là: Số của phần tử đó trong phầnn tử hiện có.n thời dùng tự định nghĩa.i của phần tử đó trong a hàng đợngi.

Câu Hỏii 8. Khi cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng mảngng, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u ta đặc thực).t tên các biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n như sau: biến Tn
T thểu hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đi, biến Tn H thểu hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đầnu. Thao tác thêm 1 phầnn tử vào hàng đợngi sẽ:
Đáp án đúng là: Tăng T lên 1 đơ bản trong các kiểu dữ liệu dưới đây?n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn .
Vì: Kiểuu dững liện có.u hàng đợngi là kiểuu dững liện có.u trong đó phầnn tử đượngc đưa vào trướic sẽ lất định.y ra trướic,
vào sau sẽ lất định.y ra sau nên khi mỗ trợ trong hầu hết i lầnn thêm mộtt phầnn tử vào hàng đợngi, phầnn tử đó sẽ đượngc thêm
vào cuố của phần tử đó trong i danh sách phầnn tử. Do đó, biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n T thểu hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đi c ủa phần tử đó trong a danh sách sẽ tăng lên 1.


Câu Hỏii 9. Khi cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng mảngng, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u ta đặc thực).t tên các biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n như sau: biến Tn T thểu hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí
đi, biến Tn H thểu hiện có.n vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đầnu. Thao tác thêm 1 phầnn tử vào hàng đợngi trong trười dùng tự định nghĩa.ng hợngp: “giá trị
c a T đúng b ng kích thư c c a mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng phần tử của hàng đợi vẫn nhỏ hơn kích n tử của hàng đợi vẫn nhỏ hơn kích c a hàng đợng phần tử của hàng đợi vẫn nhỏ hơn kích i vẫn nhỏ hơn kích n nhỏ hơn kích hơn kích n kích
thư c c a mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng” sẽ:
Đáp án đúng là: Giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn T đượngc gán bằng chỉ số của phần tử đó trong ng 1.
Vì: Hãy hình dung mảngng giố của phần tử đó trong ng như 1 vòng tròn, các phầnn tử sẽ đượngc xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p thức biểu diễn tực) theo chiềmu kim
đồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu ng hồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu . Phầnn tử cuố của phần tử đó trong i cùng của phần tử đó trong a mảngng sẽ đượngc nố của phần tử đó trong i vớii phầnn tử đầnu tiên của phần tử đó trong a mảngng. Khi đó, phầnn
tử đầnu tiên của phần tử đó trong a mảngng sẽ đượngc coi như phầnn tử đức biểu diễn ng tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p sau phầnn tử cuố của phần tử đó trong i cùng của phần tử đó trong a mảngng. Khi
đó, trong trười dùng tự định nghĩa.ng hợngp T = kich_thuoc, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u ta thêm mộtt phầnn tử vào hàng đ ợngi, phầnn t ử này sẽ đ ượngc
xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p vào vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí cuố của phần tử đó trong i cùng của phần tử đó trong a mảngng. Giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn của phần tử đó trong a T sẽ đượngc gán bằng chỉ số của phần tử đó trong ng 1 đểu cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t rằng chỉ số của phần tử đó trong ng phầnn tử tiến các phần tử trong mảng bằng chỉ số của phần tử đó trong p
theo đượngc thêm vào hàng đợngi sẽ đượngc xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p vào vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí đầnu tiên của phần tử đó trong a mảngng.
Câu Hỏii 10. Cất về danh sách?u trúc d li u nào t ơng ứcng vớii nguyên lý FIFO
Đáp án đúng là: Queue
Câu Hỏii 2. Vi c cài đặtt hàng đợci bằngng mảng,ng đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n qua khai báo d ớii đây:
#define max N
typedef int ELEMENT;
struct QUEUE_ARRAY
{
ELEMENT ele[max];
int capacity, H, T, S;
} q;
Ý nghĩa đúng nhất định.t của phần tử đó trong a q là:

Đáp án đúng là: Tên của phần tử đó trong a hàng đợngi.
Vì: Vớii viện có.c cài đặc thực).t hàng đợngi bằng chỉ số của phần tử đó trong ng mảngng như đầnu bài, ta thất định.y:
- N: Đột lớin cực)c đạti của phần tử đó trong a hàng đợngi
- ELEMENT: Kiểuu dững liện có.u của phần tử đó trong a các phầnn tử trong hàng đợngi
- capacity: Kích thướic của phần tử đó trong a hàng đợngi
- q: Tên của phần tử đó trong a hàng đợngi
Câu Hỏii 6. Vi c kiể tính tốn giá trị của một đa thức 1 m tra hàng đợci có rỗi nút gồm bao nhiêu thành phần?ng không đ ợcc thựa chọn định nghĩa đúng nhất về danh sách?c hi n bằngng đoạp:n mã d ớii đây:
int IS_EMPTY(QUEUE_ARRAY q)
{
if (………)
return 1;
else
return 0;
}
Hãy lực)a chọnn câu trảng lời dùng tự định nghĩa.i đúng nhất định.t nộti dung điềmn vào chỗ trợ trong hầu hết trố của phần tử đó trong ng (.........) của phần tử đó trong a đoạtn mã trên:
Đáp án đúng là: q.S == 0
Vì: q.S chức biểu diễn a số của phần tử đó trong phầnn tử hiện có.n thời dùng tự định nghĩa.i của phần tử đó trong a hàng đợngi.
Câu Hỏii 10. Khi cài đặtt hàng đợci bằngng mảng,ng, nết đôi, mỗi nút gồm bao nhiêu thành phần?u ta đặtt tên các biết đôi, mỗi nút gồm bao nhiêu thành phần?n nh sau: biến n
T thể tính toán giá trị của một đa thức 1 hi n vịnh nghĩa đúng nhất về danh sách? trí đi, biến n H thể tính tốn giá trị của một đa thức 1 hi n vịnh nghĩa đúng nhất về danh sách? trí đầnu.
Thao tác lất về danh sách?y ra 1 phầnn tử của một đa thức 1 a hàng đợci trong tr ờng có ng hợcp: “giá trị của H đúng bằng kích của H đúng bằng kích a H đúng bằng kích ng kích
thước của mảng”c của H đúng bằng kích a mảng”ng” sẽ:


Đáp án đúng là: Giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn H đượngc gán bằng chỉ số của phần tử đó trong ng 1.
Vì: Giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn ban đầnu của phần tử đó trong a H bằng chỉ số của phần tử đó trong ng 1 đểu cho thất định.y rằng chỉ số của phần tử đó trong ng ban đầnu hàng đợngi đượngc lưu trững bắtt đầnu từu
phầnn tử đầnu tiên của phần tử đó trong a mảngng. Mỗ trợ trong hầu hết i lầnn loạti bỏ) mộtt phầnn tử ra khỏ)i hàng đợngi, giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn H sẽ đượngc gán
bằng chỉ số của phần tử đó trong ng 1.
TUẦN 2N 5
Câu Hỏii 1
Cho mộtt biểuu diễnn cây như sau:

Mức biểu diễn c của phần tử đó trong a đỉ số của phần tử đó trong nh 3 là :

Đáp án đúng là: 2.
Câu Hỏii 2
Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t đột cao của phần tử đó trong a mộtt cây đượngc xác đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh như thến các phần tử trong mảng bằng chỉ số của phần tử đó trong nào?
Đáp án đúng là: Là đột dài đười dùng tự định nghĩa.ng đi dài nhất định.t từu gố của phần tử đó trong c tớii lá.
Câu Hỏii 3
Đỉ số của phần tử đó trong nh trong của phần tử đó trong a mộtt cây là đỉ số của phần tử đó trong nh như thến các phần tử trong mảng bằng chỉ số của phần tử đó trong nào?
Đáp án đúng là: Là đỉ số của phần tử đó trong nh có ít nhất định.t 1 con.
Câu Hỏii 4
Cho mộtt biểuu diễnn cây như sau:

Đáp án đúng là: {4, 5, 6, 8, 9}.
Vì: lá là đỉ số của phần tử đó trong nh khơng có con nên vớii cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân đầnu bài cho thì các đỉ số của phần tử đó trong nh khơng có con là: 4,5,6,8,9
Câu Hỏii 5
Các đỉ số của phần tử đó trong nh của phần tử đó trong a cây có bậpc bằng chỉ số của phần tử đó trong ng 0 thì đượngc gọni là gì?
Đáp án đúng là: Là Lá.
Vì: Theo khái niện có.m cơ bản trong các kiểu dữ liệu dưới đây? bảngn vềm cây: Các đỉ số của phần tử đó trong nh có bậpc bằng chỉ số của phần tử đó trong ng khơng đượngc gọni là lá của phần tử đó trong a cây.
Tham khảng,o: Giáo trình Cất định.u trúc dững liện có.u và giảngi thuậpt, Bài 5, mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 5.1. Các khái niện có.m cơ bản trong các kiểu dữ liệu dưới đây? bảngn vềm
cây
Câu trảng lời dùng tự định nghĩa.i đúng là:Là Lá.
Câu Hỏii 6
Có bao nhiêu thao tác trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân?
Có 5 thao tác.
Phảngn hồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu i


Câu trảng lời dùng tự định nghĩa.i của phần tử đó trong a bạtn chưa chính xác
Đáp án đúng là: Có 5 thao tác.
Vì: các thao tác trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra còn phân gồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu m:

- Khởi tạo con trỏ CurrNode trỏ tới đầu danh i tạto cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân (mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 5.2.3.1)
- Tạto mộtt nút mớii (mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 5.2.3.2)
- Thêm mộtt nút vào trong cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân (mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 5.2.3.3)
- Duyện có.t các nút trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn phân (mụng trong các thuật tốn là kiểu dữ liệu con trỏ (POINTER).c 5.2.3.4)
- Hủa phần tử đó trong y mộtt nút trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân (mụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c 5.2.3.5)
Câu Hỏii 7
Đâu là phươ bản trong các kiểu dữ liệu dưới đây?ng pháp duyện có.t hậpu thức biểu diễn tực) mộtt cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân?
Đáp án đúng là: Duyện có.t cây con bên phảngi sau đó tớii cây con bên trái rồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu i tớii nút gố của phần tử đó trong c.
Vì: Duyện có.t cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra còn phân Hậpu thức biểu diễn tực) hay duyện có.t thức biểu diễn tực) nút gố của phần tử đó trong c sau: Theo cách duyện có.t này thì nút gố của phần tử đó trong c
sẽ đượngc duyện có.t sau cùng so vớii duyện có.t hai nút cây con. Căn cức biểu diễn vào thức biểu diễn tực) duyện có.t hai cây con mà
chúng ta có hai cách duyện có.t thức biểu diễn tực) nút gố của phần tử đó trong c sau: (1) Duyện có.t cây con trái, duyện có.t cây con ph ảngi, duy ện có.t
nút gố của phần tử đó trong c; và (2) Duyện có.t cây con phảngi, duyện có.t cây con trái, duyện có.t nút gố của phần tử đó trong c.
Câu Hỏii 8
Cho mộtt biểuu diễnn cây như sau:

Bậpc của phần tử đó trong a đỉ số của phần tử đó trong nh e là
Đáp án đúng là: 2
Vì: đỉ số của phần tử đó trong nh e có 2 con là i và j
Câu Hỏii 9
Quan hện có. phân cất định.p giữnga các nút trong cây đượngc gọni là quan hện có. gì?
Đáp án đúng là: Quan hện có. cha - con.
Câu Hỏii 10
Các phầnn tử của phần tử đó trong a cây thì đượngc gọni là gì?
Đáp án đúng là: Là nút.
Câu Hỏii 9
Hãy cho biến các phần tử trong mảng bằng chỉ số của phần tử đó trong t kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng duyện có.t trung thức biểu diễn tực) (duyện có.t nút gố của phần tử đó trong c giữnga) của phần tử đó trong a cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân sau.

Đáp án đúng là: BADCE.
Vì: Đây là cách duyện có.t cây con trái, duyện có.t nút gố của phần tử đó trong c, duyện có.t cây con phảngi c ủa phần tử đó trong a phép duy ện có.t th ức biểu diễn t ực) nút
gố của phần tử đó trong c giữnga: Theo thức biểu diễn tực) này, chúng ta duyện có.t cây con trái trướic rồm kiểu dữ liệu số nguyên (INTEGER), kiểu dữ liệu i duyện có.t nút gố của phần tử đó trong c, và sau đó duyện có.t

cây con phảngi.


TUẦN 2N 6
Câu Hỏii 1. Đâu là cây nhịnh nghĩa đúng nhất về danh sách? phân tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m trong các cây nhịnh nghĩa đúng nhất về danh sách? phân sau?
Chọnn mộtt:

A.

B.


C.

D.

Đáp án đúng là:

Vì:
Theo đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh nghĩa cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m thì:
Mọni khóa trên cây con trái đềmu nhỏ) hơ bản trong các kiểu dữ liệu dưới đây?n khóa trên nút k.
Mọni khóa trên cây con phảngi đềmu lớin hơ bản trong các kiểu dữ liệu dưới đây?n khóa trên nút k.
Câu Hỏii 2. Cho hàm tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m tuầnn tựa chọn định nghĩa đúng nhất về danh sách? nh sau
typedef <kiểuu_dững_liện có.u> KeyType;
int Sequential_Search(dataArray R,KeyType X,int n);


{
int i;
i=0;

while((R[i]!= X)&&(i < n))
{
i++;
}
if(i < n) return (1);
else return(–1);
}
Chọnn khẳng định đúng nhất:ng đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh đúng nhất định.t:
Đáp án đúng là: Hàm sẽ trảng vềm -1 nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u khơng tìm thất định.y phầnn tử có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn là X.
Vì: Hàm Sequential_Search thực)c hiện có.n viện có.c tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m phầnn tử có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn X trên mảngng R có n phầnn tử.
Nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u tìm thất định.y, thì hàm trảng vềm mộtt số của phần tử đó trong nguyên có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn tươ bản trong các kiểu dữ liệu dưới đây?ng ức biểu diễn ng vớii vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí của phần tử đó trong a phầnn tử tìm thất định.y.
Ngượngc lạti, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u khơng tìm thất định.y, hàm trảng vềm giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn –1.
Câu Hỏii 3. Bạp:n hãy cho biết đôi, mỗi nút gồm bao nhiêu thành phần?t độ phứcc tạp:p của một đa thức 1 a giảng,i thu t tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m tuầnn tựa chọn định nghĩa đúng nhất về danh sách?.
Đáp án đúng là: O(n)
Vì: ý tưởi tạo con trỏ CurrNode trỏ tới đầu danh ng của phần tử đó trong a thuậpt tốn tuầnn tực) là bắtt đầnu duyện có.t từu phầnn tử 0 đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n phầnn tử N-1. Nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u xuất định.t hiện có.n
phầnn tử cầnn tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m ghi nhậpn vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí xuất định.t hiện có.n:
for(i=0->N-1)
if(a[i]=x)
break;
Do đó, Số của phần tử đó trong phép toán so sánh: n và Đột phức biểu diễn c tạtp thuậpt toán: O(n)
Câu Hỏii 4. Đoạp:n mã giảng, d ớii đây mơ tảng, thu t tốn gì?
Thuậpt tốn:
B1: k = 0
B2: IF (M[k] != X) AND (k < N)
B2.1: k++
B2.2: Lặc thực).p lạti B2
B3: IF k < N
Thông báo tìm thất định.y tạti vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn trí k
B4: ELSE
Khơng tìm thất định.y.

B5: Kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t thúc
Đáp án đúng là: Tìm tuyến các phần tử trong mảng bằng chỉ số của phần tử đó trong n tính phầnn tử có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn X.
Vì: Đoạtn mã giảng trên thực)c hiện có.n đúng ý tưởi tạo con trỏ CurrNode trỏ tới đầu danh ng của phần tử đó trong a thuậpt tốn tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m tuầnn tực) hay tuyến các phần tử trong mảng bằng chỉ số của phần tử đó trong n tính
(Sequential Search):
Bắtt đầnu từu mẩyu tin đầnu tiên, lầnn lượngt so sánh khóa tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m vớii khóa tươ bản trong các kiểu dữ liệu dưới đây?ng ức biểu diễn ng của phần tử đó trong a các mẩyu tin
trong danh sách, cho tớii khi tìm thất định.y mẩyu tin có khóa bằng chỉ số của phần tử đó trong ng khóa tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m hoặc thực).c đã duyện có.t h ến các phần tử trong mảng bằng chỉ số của phần tử đó trong t
danh sách mà chưa thất định.y.


Câu Hỏii 5. Xét thủa một đa thức 1 tụng danh sách liên kết để tính tốn giá trị của một đa thức 1 c sau:
int TimKiemNP (int M[], int First, int Last, int X)
{
if (First > Last)
return (-1);
int Mid = (First + Last)/2;
if (X == M[Mid])
return (Mid);
if (X < M[Mid])
return(TimKiemNP (M, First, Mid – 1, X));
else
return(TimKiemNP (M, Mid + 1, Last, X));
}
Lực)a chọnn câu đúng nhất định.t đểu mơ tảng thủa phần tử đó trong tụng trong các thuật toán là kiểu dữ liệu con trỏ (POINTER).c trên
Đáp án đúng là: Hàm tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m đện có. quy phầnn tử có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn là X trên mảngng các phầnn tử từu chỉ số của phần tử đó trong số của phần tử đó trong từu
First đến các phần tử trong mảng bằng chỉ số của phần tử đó trong n chỉ số của phần tử đó trong số của phần tử đó trong Last.
Vì:
Đện có. quy xuất định.t hiện có.n tạti lện có.nh:
if (X < M[Mid])
return(TimKiemNP (M, First, Mid – 1, X));
else

return(TimKiemNP (M, Mid + 1, Last, X))
Câu Hỏii 6. Khi xóa một nút của một đa thức 1 a cây nhịnh nghĩa đúng nhất về danh sách? phân tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m, tr ờng có ng hợcp nút cầnn xóa là nút có đủa một đa thức 1
hai nút gốc cây con. Đâu là định nghĩa đúng nhất về danh sách?nh nghĩa đúng nhất về danh sách?t cho khái ni m "nút tiề danh sách?n nhi m"?
Đáp án đúng là: Nút cực)c phảngi của phần tử đó trong a cây con trái
Vì: Theo đị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn nh nghĩa, thao tác xóa mộtt nút của phần tử đó trong a cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m, trười dùng tự định nghĩa.ng hợngp nút cầnn xóa là
nút có đủa phần tử đó trong hai nút gố của phần tử đó trong c cây con đượngc thực)c hiện có.n theo khái niện có.m nút tiềmn nhiện có.m như sau: xóa nút đó
và thay thến các phần tử trong mảng bằng chỉ số của phần tử đó trong nó bằng chỉ số của phần tử đó trong ng nút có khóa lớin nhất định.t trong các khóa nhỏ) hơ bản trong các kiểu dữ liệu dưới đây?n khóa của phần tử đó trong a nó (đ ượngc gọni là "nút
tiềmn nhiện có.m" – nút cực)c phảngi của phần tử đó trong a cây con trái)
Câu Hỏii 7. Cho thu t tốn tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m trên cây nhịnh nghĩa đúng nhất về danh sách? phân tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m nh sau:
Bướic 1: đặc thực).t con trỏ) Root = BST;
Bướic 2: nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u (Root = NULL) hoặc thực).c (Root –> infor = X)
Kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t thúc thuậpt tốn;
Bướic 3: ngượngc lạti:nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u (Root –> infor > X)
Root = Root –> left;
//tìm X ởi tạo con trỏ CurrNode trỏ tới đầu danh cây con bên trái
Bướic 4: ngượngc lạti nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u(Root –> infor < X)
Root = Root –> right;
//tìm X ởi tạo con trỏ CurrNode trỏ tới đầu danh cây con bên phảngi
Bướic 5: lặc thực).p lạti bướic 2;


Và cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m sau:

Khố cầnn tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m X = 40 thì số của phần tử đó trong lầnn thực)c hiện có.n Bướic 2 là?
Đáp án đúng là: 3
Vì: Thực)c hiện có.n tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m vớii Khố cầnn tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m X = 40, kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t thúc tìm
khi (Root = NULL) hoặc thực).c (Root –> infor = X)

Vậpy sau 3 lầnn thực)c hiện có.n bướic 2 thì kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t thúc tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m.
Câu Hỏii 8. Đâu là một điề danh sách?u ki n của một đa thức 1 a vi c xóa một nút của một đa thức 1 a cây nhịnh nghĩa đúng nhất về danh sách? phân tìm kiết đôi, mỗi nút gồm bao nhiêu thành phần?m?

Đáp án đúng là: Cây nhậpn đượngc sau khi xóa là cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m
Vì: Theo 6.4.2.2. Thao tác xóa mộtt nút trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m của phần tử đó trong a bài 6 giáo trình Cất định.u trúc d ững
liện có.u và giảngi thuậpt: “viện có.c xóa mộtt nút trên cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m vẫu nhiên.n phảngi bảngo đảngm cây sau khi
xóa là cây nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m”
Câu Hỏii 9. Cho thu t tốn tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m sau, vớii điề danh sách?u ki n các giá trịnh nghĩa đúng nhất về danh sách? của một đa thức 1 a mảng,ng đã đ ợcc sắp p
theo thức tựa chọn định nghĩa đúng nhất về danh sách? tăng dầnn:
typedef <kiểuu_dững_liện có.u> KeyType;
int LinearSearch(KeyType X, dataArray R,int n)
{
int i;
for(i = 0;i < n;i++)
{
if(R[i]== X) return(i);
else if(X < R[i]) return(–1);
}
return(–1);
}
Chọnn câu đúng nhất định.t trong trười dùng tự định nghĩa.ng hợngp xất định.u nhất định.t khi khơng tìm thất định.y phầnn tử nào có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn bằng chỉ số của phần tử đó trong ng X:
Đáp án đúng là: Số của phần tử đó trong phép so sánh: Smax = 3N.
Vì: Trong trười dùng tự định nghĩa.ng hợngp xất định.u nhất định.t, vòng lặc thực).p FOR thực)c hiện có.n N lầnn, mỗ trợ trong hầu hết i lầnn thực)c hiện có.n 3 phép so sánh.
Câu Hỏii 10. Cho thu t tốn tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m sau, vớii điề danh sách?u ki n các giá trịnh nghĩa đúng nhất về danh sách? của một đa thức 1 a mảng,ng đã đ ợcc sắp p
theo thức tựa chọn định nghĩa đúng nhất về danh sách? tăng dầnn:
typedef <kiểuu_dững_liện có.u> KeyType;
int LinearSearch(KeyType X, dataArray R,int n)
{int i;
for(i = 0;i < n;i++)
{


if(R[i]== X) return(i);

else if(X < R[i]) return(–1);
}
return(–1);
}
Khi đó, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u tìm giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn X = 85 trong mảngng đượngc sắtp xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p theo thức biểu diễn tực) tăng dầnn như sau:
10, 20, 30, 40, 50, 60,70, 80, 90, 100
Chọnn câu đúng nhất định.t trong trười dùng tự định nghĩa.ng hợngp xất định.u nhất định.t khi khơng tìm thất định.y phầnn tử nào có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn bằng chỉ số của phần tử đó trong ng X
Đáp án đúng là: Số của phần tử đó trong phép so sánh: Smax = 27.
Vì:
Trong trười dùng tự định nghĩa.ng hợngp này, vịng lặc thực).p FOR thực)c hiện có.n 9 lầnn, mỗ trợ trong hầu hết i lầnn thực)c hiện có.n 3 phép so sánh.
Câu Hỏii 2. Cho thu t tốn tìm kiết đôi, mỗi nút gồm bao nhiêu thành phần?m nhịnh nghĩa đúng nhất về danh sách? phân sau:
Bướic 1: đặc thực).t First = 0 và Last = n – 1;
Bướic 2: Found = –1;//Found là biến các phần tử trong mảng bằng chỉ số của phần tử đó trong n lưu vị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngoài ra cịn trí tìm thất định.y X trong mảngng
Bướic 3: while((First <= Last)&&(Found == –1))
{ Mid =(First + Last)/2;
if(X < R[Mid]) Last = Mid – 1;
else if(X > R[Mid]) First = Mid + 1;
else Found = Mid;
}
Đâu là điềmu kiện có.n của phần tử đó trong a mảngng R[] đểu thực)c hiện có.n thuậpt tốn?
Đáp án đúng là: Đượngc sắtp tăng
Vì: Đểu thực)c hiện có.n thuậpt tốn tìm kiến các phần tử trong mảng bằng chỉ số của phần tử đó trong m nhị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn phân thì mảngng R[] phảngi đượngc sắtp xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p có thức biểu diễn tực).
Vớii thuậpt toán đầnu bài cho thì mảngng R[] phảngi cầnn sắtp xến các phần tử trong mảng bằng chỉ số của phần tử đó trong p tăng
Vì:
Mid =(First + Last)/2; //lấy phần tử giữa mảngy phần tử của hàng đợi vẫn nhỏ hơn kích n tử của hàng đợi vẫn nhỏ hơn kích giữa mảnga mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng
if(X < R[Mid]) Last = Mid – 1; //nến Tu X nhỏ hơn kích hơn kích n phần tử của hàng đợi vẫn nhỏ hơn kích n tử của hàng đợi vẫn nhỏ hơn kích giữa mảnga mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng thì thực hiện tìm kiếm bên trái c hiện tìm kiếm bên trái n tìm kiến Tm bên trái
mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng
else if(X > R[Mid]) First = Mid + 1; //nến Tu X l n hơn kích n phần tử của hàng đợi vẫn nhỏ hơn kích n tử của hàng đợi vẫn nhỏ hơn kích giữa mảnga mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng thì thực hiện tìm kiếm bên trái c hiện tìm kiếm bên trái n tìm kiến Tm bên
phảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích i mảng trong khi số lượng phần tử của hàng đợi vẫn nhỏ hơn kích ng
else Found = Mid; //tìm thấy phần tử giữa mảngy phần tử của hàng đợi vẫn nhỏ hơn kích n tử của hàng đợi vẫn nhỏ hơn kích

Câu Hỏii 7. Cho thu t tốn tìm kiết đơi, mỗi nút gồm bao nhiêu thành phần?m sau
typedef <kiểuu_dững_liện có.u> KeyType;
int Sequential_Search(dataArray R,KeyType X,int n);
{
int i;
i=0;
while((R[i]!= X)&&(i < n))
{


i++;
}
if(i < n) return (1);
else return(–1);
}
Khi đó, nến các phần tử trong mảng bằng chỉ số của phần tử đó trong u tìm giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn X = 34 trong mảngng sau: 11, 23, 33, 34, 35, 62,71, 80, 95, 100
Chọnn câu đúng nhất định.t cho số của phần tử đó trong phép so sánh trong vịng lặc thực).p while:
Đáp án đúng là: Số của phần tử đó trong phép so sánh: S = 8.
Vì:
Vịng lặc thực).p WHILE thực)c hiện có.n 4 lầnn khi tìm thất định.y X=34, mỗ trợ trong hầu hết i lầnn thực)c hiện có.n 2 phép so sánh.
Câu Hỏii 10. Cho thu t toán sau
int LinearSearch (float M[], int N, float X)
{ int k = 0;
M[N] = X;
while (M[k] != X) //n+1 lan
k++;
if (k < N)
return (1);
else return (-1);
}

Chọnn câu đúng nhất định.t trong trười dùng tự định nghĩa.ng hợngp xất định.u nhất định.t khi khơng tìm thất định.y phầnn tử nào có giá trị logic (BOOLEAN), kiểu dữ liệu ký tự (CHAR). Ngồi ra cịn bằng chỉ số của phần tử đó trong ng X:
Đáp án đúng là:
Số của phần tử đó trong phép gán: Gmax = N
Số của phần tử đó trong phép so sánh: Smax = N + 1
Vì:
Trong trười dùng tự định nghĩa.ng hợngp xất định.u nhất định.t, vịng lặc thực).p WHILE thực)c hiện có.n N+1 lầnn, mỗ trợ trong hầu hết i lầnn thực)c hiện có.n 1 phép so
sánh và thêm 1 phép so sánh đểu trảng kến các phần tử trong mảng bằng chỉ số của phần tử đó trong t quảng.
Câu 11. Cho các bước của thuật toán sắp dãy sắp xếp một dãy a 1, a2,…, an theo thứ tự tăng dần
theo thuật toán Selection sort như sau:
Bước 1: i = 0;
Bước 2: tìm phần tử A[min] nhỏ nhất trong dãy từ A[i] tới A[n–1]
Bước 3: hoán vị A[min] và A[i]
Bước 4 : nếu i <= n – 2 thì i = i + 1, lặp lại bước 2, ngược lại thì dừng
Trường hợp tốt nhất, khi dãy phần tử cần sắp xếp có thứ tự tăng dần:
Đáp án đúng là: Số phép gán: Sgán = 0
Câu 11. Khi tìm kiếm trên cây nhị phân tìm kiếm, đâu là điều kiện chuyển hướng tìm kiếm sang
cây con trái?


Đáp án đúng là: Khi khóa cần tìm nhỏ hơn khóa ở gốc
Câu 12. Bạn hãy cho biết độ phức tạp của việc sắp xếp tăng dần một dãy số bằng thuật toán chèn
trực tiếp trong trường hợp dãy đang được sắp giảm dần với n là số phần tử của dãy.
Đáp án đúng là: O(n2).
Câu 13. Khi tìm kiếm trên cây nhị phân tìm kiếm, đâu là trường hợp kết luận khóa cần tìm khơng
có trên cây?
Đáp án đúng là: Khi khóa cần tìm lớn hơn khóa ở gốc và cây con phải rỗng
Câu 14. Trong định nghĩa danh sách liên kết đôi, mỗi nút gồm bao nhiêu thành phần?
Đáp án đúng là “ 3 thành phần ”.
Câu 15. Có bao nhiêu thao tác trên cây nhị phân?


Đáp án đúng là: “ Có 5 thao tác”.

Câu 16. Cho dãy sốA[] gồm 8 phần tử: 12, 2, 8, 5, 1, 6, 4, 15
Dùng thuật toán Quick sort để xếp tăng dãy trên, trong lần đầu tiên phân hoạch với khóa chốt là phần
tử x=A[4]=5, đâu là cặp giá trị được hoán vị đầu tiên?
Đáp án đúng là: 12, 4
Câu 17. Trong định nghĩa danh sách liên kết đơn, mỗi nút gồm bao nhiêu thành phần?
Đáp án đúng là “ 2 thành phần ”.
Câu 18. Cho biểu thức số học dạng Balan như sau: 1 3 + 5 6 4 – – * việc tính tốn giá trị biểu thức này
khi dùng Stack được cài đặt bằng mảng thì số phần tử tối thiểu của mảng phải là bao nhiêu?
Đáp án
đúng là: “4”.

Câu 19. Cho thuật tốn tìm kiếm nhị phân sau:
Bước 1: đặt First = 0 và Last = n – 1;
Bước 2: Found = –1;//Found là biến lưu vị trí tìm thấy X trong mảng
Bước 3: while((First <= Last)&&(Found == –1))
{
Mid =(First + Last)/2;
if(X > R[Mid]) Last = Mid – 1;
else if(X < R[Mid]) First = Mid + 1;
else Found = Mid;
}
Khi đó, nếu tìm giá trị X = 3 trong mảng(5pt): 1, 2, 3, 4, 5
Số lần lặp là bao nhiêu:

Đáp án đúng là:1




×