intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 2: Các cấu trúc dữ liệu cơ bản

Chia sẻ: Minh Anh | Ngày: | Loại File: PDF | Số trang:76

84
lượt xem
8
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Cấu trúc dữ liệu và giải thuật - Chương 2: Các cấu trúc dữ liệu cơ bản" cung cấp cho người đọc các nội dung: Danh sách liên kết, ngăn xếp, hàng đợi. Hi vọng đây sẽ là một tài liệu hữu ích dành cho các bạn sinh viên ngành Công nghệ thông tin dùng làm tài liệu tham khảo phục vụ học tập và nghiên cứu.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 2: Các cấu trúc dữ liệu cơ bản

  1. Giảng viên: Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến
  2. 2 Danh sách liên kết Ngăn xếp Hàng đợi Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  3. 3 Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  4. 4  Giới thiệu  Các loại danh sách liên kết  Các thao tác trên danh sách liên kết  So sánh danh sách liên kết và mảng  Ứng dụng Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  5. 5  Mảng: cấu trúc dữ liệu quen thuộc  Tập có thứ tự  Số lượng phần tử cố định (tĩnh)  Cấp phát vùng nhớ liên tục  Truy xuất phần tử thông qua chỉ số Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  6. 6  Đánh giá thao tác trên mảng:  Truy xuất phần tử?  Cập nhật?  Chèn phần tử?  Xoá phần tử? Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  7. 7  Thực tế:  Không xác định được chính xác số lượng phần tử  Danh sách bệnh nhân: tăng/giảm.  Danh sách sinh viên: tăng/giảm.  Vùng nhớ thay đổi trong quá trình sử dụng => Không đủ vùng nhớ cấp phát liên tục. => Cấu trúc dữ liệu động đáp ứng nhu cầu Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  8. 8  Danh sách liên kết đơn  singly linked list  uni-directional linked list  Danh sách liên kết kép  doubly linked list  bi-directional linked list  Danh sách liên kết vòng  circularly linked list  ring list Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  9. 9  Mỗi phần tử có MỘT liên kết đến phần tử phía sau nó. 12 99 37 Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  10. 10  Mỗi phần tử có HAI liên kết đến phần tử đứng sau và trước nó. 12 99 37 Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  11. 11  Có mối liên kết giữa phần tử cuối và phần tử đầu 12 99 37 Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  12. 12  Phần tử (Node, Element)  Phần tử = Dữ liệu + Liên kết  Ví dụ:  Phần tử có 1 liên kết 12  Phần tử có 2 liên kết 99  Phần tử rỗng Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  13. 13  Phần tử có dữ liệu gồm 1 thành phần number  Phần tử có dữ liệu gồm 3 thành phần name id number  Phần tử có dữ liệu gồm 1 cấu trúc name id number Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  14. 14  Sinh viên tự viết phần cài đặt cho các ví dụ trên Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  15. 15  Mỗi danh sách liên kết bao gồm:  Con trỏ đến phần tử đầu (hoặc/và cuối) danh sách.  (Các) phần tử trên danh sách  Dữ liệu  Các mối liên kết 12 99 37 Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  16. 16 12 99 37 Head 12 99 37 Head Tail Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  17. 17  Thêm phần tử  Duyệt danh sách  Xoá phần tử  Xoá danh sách Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  18. 18  Vào đầu danh sách  Sau một phần tử  Vào cuối danh sách Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  19. 19  Vào đầu danh sách:  Nếu danh sách rỗng  Phần tử vừa thêm là phần tử đầu danh sách  Ngược lại, 1 12 99 37 Head Cấu trúc dữ liệu và giải thuật – HCMUS 2013
  20. 20  Sau một phần tử (pNode):  Nếu danh sách rỗng?  Nếu danh sách khác rỗng?  Tạo node mới có dữ liệu là Data.  Cập nhật lại liên kết của CurNode và node vừa tạo. 12 X 99 37 CurNode 1 Cấu trúc dữ liệu và giải thuật – HCMUS 2013
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2