Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 386 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
386
Dung lượng
1,83 MB
Nội dung
Dãy – Danh sách Tài liệu tham khảo 6/27/14Nh p môn CTDL và thu t toánậ ậ2 Bài gi ng CTDL, Nguy n Thanh S n, ĐH KHTN TPHCMả ễ ơ Bài gi ng CTDL, Bùi Hoài Th ng, ĐH Bách Khoa TPHCMả ắ Bài gi ng CTDL, Nguy n Vi t Anh, ĐH Công ngh HNả ễ ệ ệ Bài gi ng CTDL, Ph m Th B o, ĐH KHTN TPHCMả ạ ế ả ………… Nội dung 6/27/14Nh p môn CTDL và thu t toánậ ậ3 Dãy Đ nh ngh a, khai báoị ĩ Các thao tác Tìm ki m và s p x pế ắ ế Danh sách Đ nh ngh a, khai báoị ĩ Các lo i danh sáchạ Các thao tác Định nghĩa Danh sách(List) 6/27/14Nh p môn CTDL và thu t toánậ ậ4 Danh sách bao g m m t s bi n đ ng các ph n t có ki u d li u xác đ nh.ồ ộ ố ế ộ ầ ử ể ữ ệ ị S ph n t c a danh sách g i là chi u dài c a danh sáchố ầ ử ủ ọ ề ủ Danh sách – Ví dụ 6/27/14Nh p mơn CTDL và thu t tốnậ ậ5 Ví d : Hồ sơ các học sinh của một trường được tổ chức thành danh sách gồm nhiều hồ sơ của từng học ụ sinh; số lượng học sinh trong trường có thể thay đổi do vậy cần có các thao tác thêm, hủy một hồ sơ; để phục vụ công tác giáo vụ cần thực hiện các thao tác tìm hồ sơ của một học sinh, in danh sách hồ sơ Các phép toán trên danh sách 6/27/14Nh p môn CTDL và thu t toánậ ậ6 T o m i 1 danh sáchạ ớ Thêm 1 ph n tầ ử Tìm ki m 1 ph n tế ầ ử Duy t danh sáchệ Lo i b 1 ph n tạ ỏ ầ ử S a đ i giá tr 1 ph n tử ổ ị ầ ử S p th tắ ứ ự Tách 1 danh sách thành nhi u danh sáchề Ghép nhi u danh sách thành 1 danh sáchề Sao chép 1 danh sách H y 1 danh sáchủ …………… Phân cấp đặc biệt hoá 6/27/14Nh p môn CTDL và thu t toánậ ậ7 List tuần tự First()=pos Value(pos)=item Kth(integer)=item Next(pos)=pos Length()=integer SetKth(item,integer) Insert(item,pos) Delete(pos) Find(item)=position Stack LIFO Push(item) Pop()=item IsEmpty()=true/false Queue FIFO Enqueue(item) Dequeue()=item IsEmpty()=true/false Vector ngẫu nhiên Kth(int) = item SetKth(item,integer) Danh sách – cài đặt 6/27/14Nh p môn CTDL và thu t toánậ ậ8 Ki u k ti p: danh sách kể ế ế ề Ki u liên k t: danh sách liên k tể ế ế Phân cấp cài đặt 6/27/14Nh p môn CTDL và thu t toánậ ậ9 List First()=pos Value(pos)=item Kth(integer)=item Next(pos)=pos Length()=integer SetKth(item,integer) Insert(item,pos) Delete(pos) Find(item)=position Linked List Array Danh sách kề – Cài đặt trên cơ sở mảng 6/27/14Nh p môn CTDL và thu t toánậ ậ10 Max chi u dài t i đa c a danh sáchề ố ủ Xây d ng c u trúc List g m 2 thành ph n ự ấ ồ ầ data là m t m ng các ph n t thu c ki u d li u itemộ ả ầ ử ộ ể ữ ệ count l u ch s c a thành ph n m ng l u gi ph n t cu i cùng c a danh sáchư ỉ ố ủ ầ ả ư ữ ầ ử ố ủ