Ngôn ngữ lập trình - Chương 4

44 409 3
Tài liệu đã được kiểm tra trùng lặp
Ngôn ngữ lập trình - Chương 4

Đ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

Bài giảng Ngôn ngữ lập trình - Chương 4 - Kiểu dữ liệu có câu trúc

Nguyễn Văn Linh - Programming Languages - Chapter 41CHƯƠNG 4:KIỂU DỮ LIỆU CÓ CẤU TRÚCĐịnh nghĩa kiểu dữ liệu có cấu trúc.Sự đặc tả kiểu dữ liệu có cấu trúc.Sự cài đặt các cấu trúc dữ liệu.Vectơ (mảng một chiều).Mảng nhiều chiều.Mẩu tin và mẩu tin có cấu trúc thay đổi.Chuỗi ký tự.Cấu trúc dữ liệu có kích thước thay đổi (Danh sách, Con trỏ, Tập hợp, Tập tin). Nguyễn Văn Linh - Programming Languages - Chapter 42ĐỊNH NGHĨAKiểu dữ liệu có cấu trúc hay còn gọi là CTDL là kiểu dữ liệu mà các ÐTDL có cấu trúc. Như vậy CTDL là một tập các ÐTDL có cấu trúc và tập các phép toán trên các ÐTDL đó.Các CTDL thông dụng: Mảng, chuỗi ký tự, mẩu tin, ngăn xếp, con trỏ, tập tin . Nguyễn Văn Linh - Programming Languages - Chapter 43SỰ ĐẶC TẢThuộc tính: •Số lượng phần tử.•Kiểu của các phần tử.•Tên của phần tử.•Kích thước tối đa.•Tổ chức phần tử.Phép toán:•Lựa chọn phần tử.•Phép toán trên toàn cấu trúc.•Thêm/bớt phần tử, tạo/hủy cấu trúc. Nguyễn Văn Linh - Programming Languages - Chapter 44ĐẶC TẢ THUỘC TÍNHSố lượng phần tử: Kích thước cố định, kích thước thay đổi.Kiểu phần tử: Đồng nhất và không đồng nhất.Tên của phần tử: Chỉ số, tên trường.Kích thước tối đa: Số lượng lớn nhất các phần tử.Tổ chức phần tử: Một dãy các phần tử. Nguyễn Văn Linh - Programming Languages - Chapter 45ĐẶC TẢ PHÉP TỐNPhép tốn lựa chọn một phần tử: Chọn trực tiếp và chọn tuần tự. Phép tốn trên tồn cấu trúc: Gán.Thêm / Bớt phần tử: Làm thay đổi kích thước.Tạo / Hủy cấu trúc. Nguyễn Văn Linh - Programming Languages - Chapter 46SỰ CÀI ĐẶTBiểu diễn bộ nhớ:•Biểu diễn tuần tự.•Biểu diễn liên kết.Cài đặp phép toán chọn một phần tử:•Chọn trực tiếp trong biểu diễn tuần tự.•Chọn tuần tự trong biểu diễn tuần tự .•Chọn trực tiếp trong biểu diễn liên kết.•Chọn tuần tự trong biểu diễn liên kết. Nguyễn Văn Linh - Programming Languages - Chapter 47BIỂU DIỄN BỘ NHỚBiểu diễn tuần tựBiểu diễn liên kếtBộ mô tảPhần tửPhần tửBộ mô tảPhần tử Nguyễn Văn Linh - Programming Languages - Chapter 48CÀI ĐẶT PHÉP TOÁNChọn trực tiếp trong biểu diễn tuần tự: Vị trí phần tử = địa chỉ cơ sở + độ dời.Chọn tuần tự trong biểu diễn tuần tự: Xác định vị trí phần tử đầu tiên. Vị trí phần tử tiếp theo = Vị trí phần tử hiện hành + Kích thước phần tử hiện hành.Lựa chọn trong biểu diễn liên kết: Duyệt từ đầu danh sách. Nguyễn Văn Linh - Programming Languages - Chapter 49VÉCTƠ (MẢNG MỘT CHIỀU)Định nghĩa: Là CTDL có kích thước cố định và đồng nhất.Đặc tả:Số lượng phần tử: Tập chỉ số.Kiểu của tất cả các phần tử.Tên phần tử: Chỉ số của phần tử.Phép tóan lựa chọn một phần tử: Chọn trực tiếp bằng cách chỉ ra chỉ số của phần tử. Chỉ số là giá trị của biểu thức.Phép toán gán.Ví dụ: V : ARRAY[1 10] OF REAL 10CÀI ĐẶT VÉCTƠ (1)Tổ chức lưu trữ: Biểu diễn tuần tự.Véc t AơLBUBKi u ph n tể ầ ửEA[ LB]A[UB]Đ a ch c sị ỉ ơ ởB mô tộ ảCác ph n tầ ửKi u d li uể ữ ệC n d i t p ch sậ ướ ậ ỉ ốC n trên t p ch sậ ậ ỉ ốKích th c m i PTướ ỗ [...]... tương tự như mẩu tin bình thường. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 28 CẤU TRÚC DỮ LIỆU CĨ KÍCH THƯỚC THAY ĐỔI  Định nghĩa: Là CTDL có số phần tử thay đổi một cách động trong quá trình thực hiện chương trình.  Một số cấu trúc điển hình:  Danh sách.  Ngăn xếp.  Hàng đợi. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 40 CÀI ĐẶT TẬP HỢP BẰNG BẢNG BĂM  Tập hợp là một... Nghi_bhxh:Real); hop_dong: (Gia_Cong_Nhat: Real); END; Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 44 CÁC LOẠI TẬP TIN KHÁC  Tập tin văn bản: Tập tin tuần tự đặc biệt, các phần tử là kí tự.  Tập tin truy xuất trực tiếp: Có thể nhẩy đến truy xuất phần tử bất kỳ. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 38 ĐẶC TẢ TẬP HỢP  CTDL đồng nhất và có kích thước thay đổi; Không quan... Văn Linh - Programmi ng Languages - Chapter 4 7 BIỂU DIỄN BỘ NHỚ  Biểu diễn tuần tự  Biểu diễn liên kết Bộ mô tả Phần tử Phần tử Bộ mô tả Phần tử Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 24 ĐẶC TẢ PHÉP TỐN CHUỖI KÝ TỰ  Đặc tả phép tốn:  Phép ghép chuỗi.  Các phép toán quan hệ.  Lấy chuỗi con của một chuỗi bằng cách chỉ ra ký tự đầu tiên và ký tự cuối cùng.  Định dạng nhập - xuất.  Chọn... Văn Linh - Programmi ng Languages - Chapter 4 32 VÍ DỤ VỀ CON TRỎ (1) Con trỏ tham chiếu đến các ĐTDL có kiểu cụ thể Type Sinh_vien = Record Ho_ten : String[25]; Tuoi : Byte; End; Var p : ^Sinh_vien; q : ^Integer; Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 43 CÀI ĐẶT TẬP TIN TUẦN TỰ  Hệ điều hành.  Giao tiếp giữa bộ nhớ trong và bộ nhớ ngồi thơng qua buffer. Nguyễn Văn Linh - Programmi ng... phần tử: Làm thay đổi kích thước.  Tạo / Hủy cấu trúc. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 14 CHỌN MỘT PHẦN TỬ CỦA MA TRẬN  Vị trí của phần tử M[i,j] được tính theo cơng thức: Vị trí M[i,j] = α + D + (i-LB1)*S + (j- LB2)*E  α là địa chỉ cơ sở.  D là kích thước bộ mơ tả.  S là kích thước 1 dịng = (UB2-LB2+1)*E.  E là kích thước một phần tử. 20 VÍ DỤ TYPE Loai_Cong_Nhan =... Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 37 TẬP HỢP  Đặc tả.  Cài đặt tập hợp bằng véctơ bit.  Cài đặt tập hợp bằng bảng băm. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 23 ĐẶC TẢ THUỘC TÍNH CHUỖI KÝ TỰ  Đặc tả thuộc tính: Có ba phương pháp:  Độ dài khai báo cố định.  Độ dài thay đổi trong một giới hạn đã được khai báo.  Độ dài không giới hạn. Nguyễn Văn Linh - Programmi ng... phần tử.  Hợp, giao và hiệu của hai tập hợp. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 27 CÀI ĐẶT CHUỖI KÝ TỰ (3)  Độ dài không cố định: Sử dụng biểu diễn liên kết có bộ mơ tả lưu trữ độ dài thực của chuỗi.  Ví dụ chuỗi cần lưu trữ là “EINSTEIN”. 8 E I N S E I N T Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 18 MẨU TIN CĨ CẤU TRÚC THAY ĐỔI (BÀI TỐN)  Ví dụ: Một xí nghiệp... Chapter 4 1 CHƯƠNG 4: KIỂU DỮ LIỆU CĨ CẤU TRÚC  Định nghĩa kiểu dữ liệu có cấu trúc.  Sự đặc tả kiểu dữ liệu có cấu trúc.  Sự cài đặt các cấu trúc dữ liệu.  Vectơ (mảng một chiều).  Mảng nhiều chiều.  Mẩu tin và mẩu tin có cấu trúc thay đổi.  Chuỗi ký tự.  Cấu trúc dữ liệu có kích thước thay đổi (Danh sách, Con trỏ, Tập hợp, Tập tin). Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 8 CÀI... Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 6 SỰ CÀI ĐẶT  Biểu diễn bộ nhớ: • Biểu diễn tuần tự. • Biểu diễn liên kết.  Cài đặp phép tốn chọn một phần tử: • Chọn trực tiếp trong biểu diễn tuần tự. • Chọn tuần tự trong biểu diễn tuần tự . • Chọn trực tiếp trong biểu diễn liên kết. • Chọn tuần tự trong biểu diễn liên kết. Nguyễn Văn Linh - Programmi ng Languages - Chapter 4 22 CHUỖI KÝ TỰ... Languages - Chapter 4 30 CON TRỎ (Cấp phát ) Cấp phát tĩnh:  Trong khi dịch.  Nhờ khai báo biến, bộ dịch sẽ dành sẵn ô nhớ đủ để lưu trữ.  Tự động giải phóng.  Sử dụng nhờ tên biến  Khơng tối ưu. Cấp phát động:  Trong khi thực hiện.  Người lập trình chủ động cấp phát và giải phóng.  Sử dụng thơng qua địa chỉ.  Cần có biến con trỏ để lưu trữ địa chỉ. Nguyễn Văn Linh - Programmi ng Languages - . Linh - Programming Languages - Chapter 41 7MẨU TIN CÓ CẤU TRÚC THAY ĐỔIBài toán. Định nghĩa.Cài đặt. Nguyễn Văn Linh - Programming Languages - Chapter 41 8MẨU. Linh - Programming Languages - Chapter 41 4CHỌN MỘT PHẦN TỬ CỦA MA TRẬNVị trí của phần tử M[i,j] được tính theo công thức:Vị trí M[i,j] = α + D + (i-LB1)*S

Ngày đăng: 08/10/2012, 14:32

Hình ảnh liên quan

 Một số cấu trúc điển hình: - Ngôn ngữ lập trình - Chương 4

t.

số cấu trúc điển hình: Xem tại trang 28 của tài liệu.
 Tập hợp là một bảng băm mở.  Phép kiểm tra. - Ngôn ngữ lập trình - Chương 4

p.

hợp là một bảng băm mở.  Phép kiểm tra Xem tại trang 40 của tài liệu.

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan