tailieunhanh - Cấu trúc dữ liệu và giải thuật I - Bài 7

Cấu trúc dữ liệu động Mục tiêu Giới thiệu khái niệm dữ liệu động Giới thiệu cấu trúc dữ liệu danh sách liên kết | r J r 1 1 A - A Bài 7 Câu trúc dữ liệu động Mục tiêu Giới thiệu khái niệm dữ liệu động Giới thiệu cấu trúc dữ liệu danh sách liên kết Nội dung Nhu cầu xây dung cấu trúc dữ liệu động Kiểu dữ liệu con trỏ Biến không động Kiểu con trỏ Biến động Danh sách liên kết Đinh nghĩa Các hình thức tổ chức Bài tập Bài tập lý thuyất Bài tập thực hành I. Nhu cầu xây dựng cấu trúc dữ liệu động Với các cấu trúc dữ liệu được xây dựng từ các kiểu cơ sở như kiểu thực kiểu nguyên kiểu ký tự . hoặc từ các cấu trúc đơn giản như mẩu tin tập hợp mảng . lập trình viên có thể giải quyết hầu hết các bài toán đặt ra. Các đối tượng dữ liệu được xác định thuộc những kiểu dữ liệu này có đặc điểm chung là không thay đổi được kích thước cấu trúc trong quá trình sống do vậy thường cứng ngắt gò bó khiến đôi khi khó diễn tả được thực tế vốn sinh động phong phú. Các kiểu dữ liệu kể trên được gọi là các kiểu dữ liệu tĩnh. Ví dụ 1. Trong thực tế một số đối tượng có thể được định nghĩa đệ qui ví dụ để mô tả đối tượng con người cần thể hiện các thông tin tối thiểu như Họ tên Số CMND Thông tin về cha mẹ Để biễu diễn một đối tượng có nhiều thành phần thông tin như trên có thể sử dụng kiểu bản ghi. Tuy nhiên cần lưu ý cha mẹ của một người cũng là các đối tượng kiểu NGƯỜI do vậy về nguyên tắc cần phải có định nghĩa như sau typedef struct NGUOI char Hoten 30 int So_CMND NGUOI Cha Me Nhưng với khai báo trên các ngôn ngữ lập trình gặp khó khăn trong việc cài đặt không vượt qua được như xác định kích thước của đối tượng kiểu NGUOI. 2. Một số đối tượng dữ liệu trong chu kỳ sống của nó có thể thay đổi về cấu trúc độ lớn như danh sách các học viên trong một lớp học có thể tăng thêm giảm đi . Khi đó nếu cố tình dùng những cấu trúc dữ liệu tĩnh đã biết như mảng để biểu diễn những đối tượng đó lập trình viên phải sử dụng những thao tác phức tạp kém tự nhiên khiến chương trình trở nên khó đọc do đó khó bảo trì và nhất là khó có thể sử dụng bộ nhớ một cách có hiệu quả. 3. Một lý do nữa làm cho các kiểu dữ liệu tĩnh không .

TỪ KHÓA LIÊN QUAN