Trường Cao đẳng Công ngh Thông tin Tp. H Chí Minh
Bài tp thc hành Môn Cu trúc D
liu- Khoa Công ngh Thông tin
10. Tách danh sách thành 2 danh sách, sao cho:
- Danh sách th nht cha các phn t là s nguyên t.
- Danh sách th hai cha các phn t còn li.
void Tach(LIST l, LIST &l1, LIST &l2)
{
KhoiTao(l1);
KhoiTao(l2);
NODE *p=l.pHead, *pAdd;
while(p)
{
int k = p->Key;
pAdd=TaoNode(k);
Nếu k là s nguyên t thì
ThemDau(l1, pAdd);
Ngược li
ThemDau(l2, pAdd);
p tr đến node kế tiếp
}
}
Bài 2: Cho 2 danh sách liên kết đơn l1 và l2 gồm các phn t là
s nguyên, viết chương
trình thc hin các yêu cu sau:
1. Sp xếp l1 và l2 tăng dần.
void SapXep(LIST &l);
2. Ni l1 và l2 thành l3 sao cho l3 vn có th t tăng dần.
void Noi(LIST l1, LIST l2, LIST &l3);
Bài 3: Cho danh sách liên kết đơn quản lý thông tin ca các
sinh viên ca 1 lp hc (tối đa
50 sinh viên). Mi sinh viên gm các thông tin: MSSV, h
tên, giới tính, địa ch và điểm
trung bình. Viết chương trình thc hin các yêu cu sau:
1. Thêm 1 sinh viên vào danh sách.
2. In ra danh sách sinh viên.
3. Xóa 1 sinh viên với MSSV cho trưc khi danh sách.
4. Sp xếp danh sách sinh viên theo th t tăng dần của điểm
trung bình.
5. Liệt kê các sinh viên có điểm trung bình >=5.0.
6. Đếm s lượng sinh viên nam.
7. Cp nhật điểm trung bình ca mt sinh viên thông qua mã s
sinh viên.
Bài 4 (Bài tp làm thêm): Dùng danh sách liên kết đơn để biu
din 2 s ln (s có vài chc
ch s tr lên), viết chương trình thc hin các yêu cu sau:
1. Cng
2. Tr
3. Nhân
4. Chia
hai s trên.
Bài 5 (Bài tập làm thêm): Cài đặt li câu 1 ca phn II dùng
danh sách liên kết kép.
Bài 6: Dùng k thut mng để cài đt minh họa các thao tác cơ
bn: pop, push, … trên
ngăn xếp (hoặc hàng đợi)
Bài 7: ng dngi 6 để cài đặt chương trình cho phép nhn
vào biu thc gm các s, các
toán t +, -, *, /, các dấu đóng m ngoc và tính giá tr ca biu
thc này
Ví d:
- Nhp biu thc: (2*3)+9-(3+4)
- In kết qu ca biu thc: 8
Phn III: Bài tp cây nh phân tìm kiếm (10 tiết)
Bài 1: Khai báo cu trúc d liu cây nh phân (các node có giá
tr là s nguyên) và viết
chương trình thc hin các yêu cu sau:
1. Nhp và duyt cây theo các th tự: trước, gia và sau.
2. Tìm node có giá tr x trên cây.
3. Tìm node có giá tr nh nht.
4. Tìm node có giá tr ln nht.
5. Tính độ cao ca cây.
6. Đếm s nút lá ca cây.
7. Đếm s nút có đúng 2 cây con.
8. Đếm s nút có đúng 1 cây con.