You are on page 1of 2

biểu diễn bằng lời

đề 64
+ ưu điểm: sd ngôn ngữ con người, không yêu cầu thuật toán phải nắm chắc
+ nhược: dài dòng, không thể hiện rõ được cấu trúc của thuật toán, đôi lúc gây nhầm
lẫn
*biểu diễn bằng lưu đồ:
+ưu: giúp theo dõi được sự phân cấp các trường hợp và quá trình xử lý của thuật toán.
thường đươc dùng trong các thuật toán có tính rắc rối
+ nhược: cồng kềnh
*biểu diễn bằng giả mã:
+ ưu: tận dụng được các khái niệm của ngôn ngữ lập trình, giúp người đọc dễ nắm
bắt đc thuật toán
+nhược: bị phụ thuộc vào ngôn ngữ lập trình đó
câu2: CTLT phân tán của đồ thị trọng số
dùng để lưu trữ danh sách kề
với đồ thị có n đỉnh thì sẽ có n danh sách kề của n đỉnh. Mỗi danh sách kề đc lưu
với 1 danh sách nút nhớ ,mỗi nút nhớ có 2 trường vertex và link.
nút cuối cùng trong danh sách nút nhớ có link= rỗng
dùng vector b có ô nhớ kế tiếp với chỉ số từ 1 đến n để chứa địa chỉ nút đầu của n
danh sách nút nhớ
b, giả mã theo chiều sâu
procedure DFS(v)
1, write(v);{thăm đỉnh}
2, visited[v]:=1{đánh dấu đỉnh chưa thăm}
3) FOR mỗi đỉnh w lân cận với v DO
If Visited[w] = 0 then CALL DFS(w);
câu 3:
a, CTLT của dslk đơn:
dslk đơn chỉ sử dụng ctdl phân tán, ở ctdl này các phần tử dữ liệu đc lưu trữ trong
các nút nhớ. mỗi nút nhớ có ctruc gồm 2 trường: infor,link
b, giả mã loại bỏ nút cuối của dslk đơn: 2,{ngắt nút cuối của ds(gsu là m)}
-vào: f,m if m=f then f:= rỗng
-ra: không có else begin
{thủ tục này loại bỏ nút cuối của dslk đơn F} if link(M)=rỗng then
procedure SLdelete(var f,m) begin
1,{trg hợp rỗng] {tìm nút đứng trước M}
if f= rỗng then begin p:=f;
write(’danh sach rong’); while link(p)!=m do p:=link(p);
{nối nút trước m thành null}
return
-link(p):=rỗng;
end;
end;
3, {hủy nút}m<=avail;
return
giả mã tìm kiếm nhị phân trên mảng và giả mã tạo cây nhị phân tìm kiếm
• Viết giả mã BST

Procedure createBST(Var T; k, n)
For i:=1 to n do BST(T, k[i]);
Return
Ví dụ: Áp dụng vẽ cây nhị phân cho dãy
khóa sau: 8 10 19 3 21 7 5 12

• Viết giả mã tạo cây nhị phân tìm kiếm

đề 66
câu 1:
Các tính chất của gt:
- Tính thực hiện được: các thao tác phép toán trong gt là các thao tác, phép toán mà
máy tính thực hiện được
- Tính kthuc: Gt phải kthuc sau khi thực hiện một số bước hữu hạn
- Tính kết quả: phải có kết quả mong muốn sau khi kết thúc
- Tính hiệu quả:
+) tiết kiệm thời gian và bộ nhớ của máy
+) thời gian bộ nhớ càng ít càng hiệu quả
- Tính duy nhất: cùng một dl đầu vào thì người hay máy, máy này máy kia thực hiện đều
ra cùng một kết quả duy nhất
- Tính tổng quát: phải áp dụng cho mọi bài toán cùng loại và xử lý được mọi tình huống
liên quan
- Tính hình thức (máy móc): phải thực hiện đúng không được thay đổi hoặc suy diễn
câu 2:
a, ctlt phân tán của cây nhị phân
-mỗi nút của cây được lưu trữ trong 1 nút nhớ ctruc gồm 3 trường:
|LPTR|INFOR|RPTR|
-nút không có con trái,con phải thì con trỏ left,right = rỗng
-dùng con trỏ t vào nút gốc để cho phép truy cập vào accs nút trên cây nhị phân
-khi cây nhị phân rỗng T:= rỗng
b, vẽ cây else begin
giả mã: call postOrder(Lptr(T));
procedure postOder(T) call postOrder(ptr(T));
if T= rỗng then write(infor(T));
return return

You might also like