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
Số trang: 76
Loại file: pdf
Dung lượng: 1.73 MB
Lượt xem: 12
Lượt tải: 0
Xem trước 8 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
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.
Nội dung trích xuất từ tài liệu:
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ảnGiảng viên:Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến2 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 20133 Cấu trúc dữ liệu và giải thuật – HCMUS 20134 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 20135 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 20136 Đá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 20137 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 20138 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 20139 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 201310 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 201311 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 201312 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 201313 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 201314 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 201315 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 201316 12 99 37 Head 12 99 37 Head Tail Cấu trúc dữ liệu và giải thuật – HCMUS 201317 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 201318 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 201319 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 201320 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 ...
Nội dung trích xuất từ tài liệu:
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ảnGiảng viên:Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến2 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 20133 Cấu trúc dữ liệu và giải thuật – HCMUS 20134 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 20135 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 20136 Đá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 20137 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 20138 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 20139 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 201310 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 201311 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 201312 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 201313 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 201314 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 201315 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 201316 12 99 37 Head 12 99 37 Head Tail Cấu trúc dữ liệu và giải thuật – HCMUS 201317 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 201318 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 201319 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 201320 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 ...
Tìm kiếm theo từ khóa liên quan:
Cấu trúc dữ liệu Bài toán giải thuật Cấu trúc dữ liệu cơ bản Danh sách liên kết Thao tác trên danh sách liên kết Thao tác trên ngăn xếpGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 318 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 162 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 1 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
64 trang 150 0 0 -
Tập bài giảng Thực hành kỹ thuật lập trình
303 trang 143 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán (Tái bản): Phần 1
152 trang 139 0 0 -
Tài liệu tham khảo: Cấu trúc dữ liệu và giải thuật
229 trang 124 0 0 -
Lập trình C - Cấu trúc dữ Liệu
307 trang 74 0 0 -
Ứng dụng và cài đặt cấu trúc dữ liệu bằng C: Phần 1
338 trang 73 0 0 -
49 trang 71 0 0
-
54 trang 70 0 0