CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM<br />
Độc lập – Tự do – Hạnh phúc<br />
ĐÁP ÁN<br />
ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHOÁ 2 (2008 - 2011)<br />
NGHỀ: LẬP TRÌNH MÁY TÍNH<br />
MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ<br />
Mã đề số: DA LTMT - LT14<br />
Câu<br />
Nội dung<br />
I. Phần bắt buộc<br />
1<br />
a. Trình bày phương pháp biểu diễn danh sách liên kết đơn.<br />
- Danh sách liên kết đơn là một cấu trúc dữ liệu bao gồm 1 tập<br />
hợp các phần tử, trong đó mỗi phần tử là một nút, trong mỗi<br />
nút có chứa một liên kết tới nút kế tiếp.<br />
- Cấu trúc 1 nút của danh sách liên kết đơn<br />
INFO<br />
<br />
LINK<br />
<br />
Trong đó:<br />
+ INFO: là trường chứa thông tin (dữ liệu) của nút<br />
+ LINK: là con trỏ chứa địa chỉ của nút kế tiếp trong<br />
danh sách.<br />
- Nút cuối trong danh sách, trường link có giá trị là NULL có<br />
nghĩa là không chứa địa chỉ nút nào.<br />
- Danh sách liên kết đơn luôn được quản lý bởi một con trỏ trỏ<br />
vào nút đầu tiên trong danh sách.<br />
- Một danh sách liên kết đơn được biểu diễn tổng quát như<br />
sau:<br />
L<br />
<br />
b. Áp dụng:<br />
- Thêm một nút có thông tin là X vào sau nút M đang trỏ, nếu<br />
không tồn tại nút M thì chèn vào đầu danh sách.<br />
<br />
Trang: 1/5<br />
<br />
Điểm<br />
<br />
0,5<br />
<br />
0,75<br />
<br />
void chen_sauM(L, M, X)<br />
{<br />
// Tạo nút mới<br />
new info=X;<br />
// Tìm vị trí chèn và chèn<br />
P=L;<br />
while(p!=M && p!=NULL)<br />
{p=p->link;}<br />
if(p!=NULL) // tìm thấy<br />
{<br />
new->link=M->link;<br />
M->link=new;<br />
}<br />
else // Không tìm thấy<br />
{<br />
new->link=L; L=new;<br />
}<br />
}<br />
<br />
- Xóa nút thứ k trong danh sách.<br />
Void Xoa_nut_thu_k(L,k)<br />
{<br />
// tìm đến nút thứ k<br />
p=L; dem=1;<br />
while(p!=null && demlink;}<br />
if(p!=NULL) // tồn tại nút thứ k<br />
{<br />
if(p= =L)<br />
L=L->link;<br />
else<br />
q->link=p->link;<br />
free(p);<br />
}<br />
else<br />
Count