1. Trang chủ
  2. » Thể loại khác

danh-sach-lien-ket pdf

156 1,7K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 156
Dung lượng 1,17 MB

Nội dung

CHAPTER 6: LINKED LISTS Cấu trúc dữ liệu động 3 Mục Mục tiêu tiêu  Giới Giới thiệu thiệu khái khái niệm niệm cấu cấu trúc trúc dữ dữ liệu liệu động động . .  Giới Giới thiệu thiệu danh danh sách sách liên liên kết kết : :  Các Các kiểu kiểu tổ tổ chức chức dữ dữ liệu liệu theo theo DSLK DSLK . .  Danh Danh sách sách liên liên kết kết đơn đơn : : tổ tổ chức chức , , các các thuật thuật toán toán , , ứng ứng dụng dụng . . 4 Kiểu Kiểu dữ dữ liệu liệu tĩnh tĩnh  Khái niệm : Một số đối tượng dữ liệu không thay thay đổi Khái niệm : Một số đối tượng dữ liệu không thay thay đổi được kích thước, cấu trúc, … trong suốt quá trình sống. được kích thước, cấu trúc, … trong suốt quá trình sống. Các đối tượng dữ liệu thuộc những kiểu dữ liệu gọi là kiểu Các đối tượng dữ liệu thuộc những kiểu dữ liệu gọi là kiểu dữ liệu tĩnh. dữ liệu tĩnh.  Một số kiểu dữ liệu tĩnh : các cấu trúc dữ liệu được xây Một số kiểu dữ liệu tĩnh : 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 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 ký tự hoặc từ các cấu trúc đơn giản như mẩu tin, tập hợp, mảng hợp, mảng   Các đối tượng dữ liệu được xác định thuộc những kiểu dữ Các đối tượng dữ liệu được xác định thuộc những kiểu dữ liệu này thường cứng ngắt, gò bó liệu này thường cứng ngắt, gò bó   khó diễn tả được thực khó diễn tả được thực tế vốn sinh động, phong phú. tế vốn sinh động, phong phú. 5 CTDL CTDL tĩnh tĩnh – – Một Một số số hạn hạn chế chế  Một Một số số đối đối tượng tượng dữ dữ liệu liệu trong trong chu chu kỳ kỳ sống sống của của nó nó có có thể thể thay thay đổi đổi về về cấu cấu trúc trúc , , độ độ lớn lớn , , như như danh danh sách sách các các học học viên viên trong trong một một lớp lớp học học có có thể thể tăng tăng thêm thêm , , giảm giảm đi đi Nếu Nếu dùng dùng những những cấu cấu trúc trúc dữ dữ liệu liệu tĩnh tĩnh đã đã biết biết như như mảng mảng để để biểu biểu diễn diễn   Những Những thao thao tác tác phức phức tạp tạp , , kém kém tự tự nhiên nhiên   chương chương trình trình khó khó đọc đọc , , khó khó bảo bảo trì trì và và nhất nhất là là khó khó có có thể thể sử sử dụng dụng bộ bộ nhớ nhớ một một cách cách có có hiệu hiệu quả quả . .  Dữ Dữ liệu liệu tĩnh tĩnh sẽ sẽ chiếm chiếm vùng vùng nhớ nhớ đã đã dành dành cho cho chúng chúng suốt suốt quá quá trình trình hoạt hoạt động động của của chương chương trình trình   sử sử dụng dụng bộ bộ nhớ nhớ kém kém hiệu hiệu quả quả . . 6 CTDL tĩnh CTDL tĩnh  Mảng 1 chiều Mảng 1 chiều  Kích thước cố định (fixed size) Kích thước cố định (fixed size)  Chèn 1 phần tử vào mảng rất khó Chèn 1 phần tử vào mảng rất khó  Các phần tử tuần tự theo chỉ số 0 Các phần tử tuần tự theo chỉ số 0 ⇒ ⇒ n-1 n-1  Truy cập ngẫu nhiên (random access) Truy cập ngẫu nhiên (random access) 0 1 2 3 4 n-2 n-1 chè n 7 Cấu trúc dữ liệu động Cấu trúc dữ liệu động  Danh sách liên kết Danh sách liên kết  Cấp phát động lúc chạy chương trình Cấp phát động lúc chạy chương trình  Các phần tử nằm rải rác ở nhiều nơi trong bộ nhớ Các phần tử nằm rải rác ở nhiều nơi trong bộ nhớ  Kích thước danh sách chỉ bị giới hạn do RAM Kích thước danh sách chỉ bị giới hạn do RAM  Thao tác thêm xoá đơn giản Thao tác thêm xoá đơn giản Insert, Delete 8 Hướng Hướng giải giải quyết quyết  Cần Cần xây xây dựng dựng cấu cấu trúc trúc dữ dữ liệu liệu đáp đáp ứng ứng được được các các yêu yêu cầu cầu : :  Linh Linh động động hơn hơn . .  Có Có thể thể thay thay đổi đổi kích kích thước thước , , cấu cấu trúc trúc trong trong suốt suốt thời thời gian gian sống sống . .   Cấu Cấu trúc trúc dữ dữ liệu liệu động động . . Danh sách liên kết Danh sách liên kết ( LINKED LIST ) ( LINKED LIST ) 10 Biến Biến không không động động Biến Biến không không động động ( ( biến biến tĩnh tĩnh , , biến biến nửa nửa tĩnh tĩnh ) ) là là những những biến biến thỏa thỏa : :  Được Được khai khai báo báo tường tường minh minh , ,  Tồn Tồn tại tại khi khi vào vào phạm phạm vi vi khai khai báo báo và và chỉ chỉ mất mất khi khi ra ra khỏi khỏi phạm phạm vi vi này này , ,  Được Được cấp cấp phát phát vùng vùng nhớ nhớ trong trong vùng vùng dữ dữ liệu liệu ( ( Data Data segment segment ) ) hoặc hoặc là là Stack Stack ( ( đối đối với với biến biến nửa nửa tĩnh tĩnh - - các các biến biến cục cục bộ bộ ). ).  Kích Kích thước thước không không thay thay đổi đổi trong trong suốt suốt quá quá trình trình sống sống . .  Do Do được được khai khai báo báo tường tường minh minh , , các các biến biến không không động động có có một một định định danh danh đã đã được được kết kết nối nối với với địa địa chỉ chỉ vùng vùng nhớ nhớ lưu lưu trữ trữ biến biến và và được được truy truy xuất xuất trực trực tiếp tiếp thông thông qua qua định định danh danh đó đó . .  Ví Ví dụ dụ : : int a; // a, b là các biến không động char b[10];

Ngày đăng: 29/06/2014, 00:20

TỪ KHÓA LIÊN QUAN