1. Trang chủ
  2. » Công Nghệ Thông Tin

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

Đ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

Tiêu đề Kiểu dữ liệu có cấu trúc
Tác giả Nguyễn Văn Linh
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Ngôn ngữ lập trình
Thể loại bài giảng
Năm xuất bản 2023
Thành phố Hồ Chí Minh
Định dạng
Số trang 44
Dung lượng 146 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

Nguyễn Văn Linh - Programmi

ng Languages - 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.

Trang 2

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

2

ĐỊ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

Trang 3

Nguyễn Văn Linh - Programmi

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.

Trang 4

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

4

ĐẶ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ử

Trang 5

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

5

ĐẶC TẢ PHÉP TOÁN

 Phép toán lựa chọn một phần tử: Chọn trực tiếp và chọn tuần tự

 Phép toán trên toà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

Trang 6

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 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.

Trang 7

Nguyễn Văn Linh - Programmi

Trang 8

Nguyễn Văn Linh - Programmi

Trang 9

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

9

VÉCTƠ (MẢNG MỘT CHIỀU)

 Định nghĩa: Là CTDL có kích thước cố định và đồng nhất.

 Phép toán gán.

 Ví dụ: V : ARRAY[1 10] OF REAL

Trang 10

CÀI ĐẶT VÉCTƠ (1)

 Tổ chức lưu trữ: Biểu diễn tuần tự

Véc t A ơ LB UB

Ki u ph n t ể ầ ử

E A[ LB]

Trang 11

Nguyễn Văn Linh - Programmi

Trang 12

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

12

MẢNG NHIỀU CHIỀU

 Đặc tả: Mỗi chiều có một tập chỉ số

 Cài đặt: Biểu diễn bộ nhớ tuần tự, các phần

tử được lưu trũ kế tiếp nhau, nhưng có 2

Trang 14

Nguyễn Văn Linh - Programmi

Trang 15

Nguyễn Văn Linh - Programmi

 Tên của mỗi phần tử.

 Kiểu của mỗi phần tử.

Ho_ten: string[25]; Tuoi: Integer;

Luong: Real;

End

Trang 16

tin Mỗi trường được

lưu trong một khối

Mỗi khối có thể có bộ

mô tả riêng.

 Ví dụ: Nhan_vien

22901 Nguy n Văn A ễ

20 2.18

Vị trí phần tử = α + Tổng kích thước các phần

tử trước đó

Ví dụ: Vị trí Tuoi = α + Kích thước Ma + Kích thước Ho_ten

Ma Ho_ten Tuoi Luong

Trang 17

Nguyễn Văn Linh - Programmi

Trang 18

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

18

MẨU TIN CÓ CẤU TRÚC

THAY ĐỔI (BÀI TOÁN)

 Ví dụ: Một xí nghiệp có hai loại công nhân: Biên chế và hợp đồng

 Lương công nhân biên chế = Số ngày công

* múc lương tối thiểu * Hệ số /20

 Những ngày nghỉ bảo hiểm xã hội, họ được trả lương bảo hiểm

 Lương công nhân hợp đồng = Số ngày công

* đơn giá công nhật

Trang 19

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

19

ĐỊNH NGHĨA MẨU TIN CÓ

CẤU TRÚC THAY ĐỔI

 Mỗi mẩu tin bao gồm hai phần: Phần tĩnh và phần động.

 Phần tĩnh gồm các trường mà tất cả các thể hiện đều có.

 Phần động sẽ có các trường khác nhau tùy theo

Trang 20

VÍ DỤ

TYPE

Loai_Cong_Nhan = (bien_che,hop_dong); VAR

Trang 21

Nguyễn Văn Linh - Programmi

Loai Gia_Cong_nhat Không s d ng ử ụ

Ho_Ten Ngay_Cong

Luong Loai He_So Nghi_BHXH

Trang 22

Nguyễn Văn Linh - Programmi

Trang 23

Nguyễn Văn Linh - Programmi

 Độ 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.

Trang 24

Nguyễn Văn Linh - Programmi

 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 chuỗi con bằng cách so mẫu.

Trang 25

Nguyễn Văn Linh - Programmi

 Ví dụ chuỗi được khai báo có độ dài 12

nhưng chuỗi thực là “EINSTEIN” Thì phải thêm vào 4 ký tự trắng để có độ dài 12

E I N S T E I N

Trang 26

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

26

CÀI ĐẶT CHUỖI KÝ TỰ (2)

 Độ dài thay đổi trong giới hạn đã khai báo:

Sử dụng một véctơ để lưu trữ một chuỗi và

có bộ mô tả lưu cả độ dài được khai báo và

độ dài thực

 Ví dụ chuỗi được khai báo có độ dài 12

nhưng chuỗi thực là “EINSTEIN” Sẽ có 4

ô không sử dụng

12 8 E I N S T E I N

Trang 27

Nguyễn Văn Linh - Programmi

 Ví dụ chuỗi cần lưu trữ là “EINSTEIN”

T

Trang 28

Nguyễn Văn Linh - Programmi

Trang 29

Nguyễn Văn Linh - Programmi

Trang 30

Nguyễn Văn Linh - Programmi

 Sử dụng thông qua địa chỉ.

 Cần có biến con trỏ để lưu trữ địa chỉ.

Trang 31

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

31

ĐẶC TẢ CON TRỎ

 Con trỏ tham chiếu đến các ĐTDL có kiểu cụ thể.

 Con trỏ tham chiếu đến các ĐTDL có kiểu bất kỳ.

 Phép toán cấp phát ô nhớ động và trả địa chỉ về cho con trỏ.

 Phép toán truy xuất tới ĐTDL được cấp phát động.

 Phép toán giải phóng ô nhớ.

Trang 32

Nguyễn Văn Linh - Programmi

Trang 33

Nguyễn Văn Linh - Programmi

Trang 34

Nguyễn Văn Linh - Programmi

Trang 35

Nguyễn Văn Linh - Programmi

Trang 36

Nguyễn Văn Linh - Programmi

chiếu đến một ĐTDL có kiểu cụ thể

 Địa chỉ tương đối: Giá trị con trỏ là độ dời của khối ô nhớ cấp phát động Địa chỉ của khối ô nhớ = địa chỉ cơ sở + giá trị con trỏ (độ dời)

Trang 37

Nguyễn Văn Linh - Programmi

Trang 38

Nguyễn Văn Linh - Programmi

Trang 39

Nguyễn Văn Linh - Programmi

 Ưu điểm: dễ dàng cài đặt

 Nhược điểm: Không gian nhỏ

Trang 40

Nguyễn Văn Linh - Programmi

Trang 41

Nguyễn Văn Linh - Programmi

Trang 42

Nguyễn Văn Linh - Programmi

ng Languages - Chapter 4

42

TẬP TIN TUẦN TỰ

 Đặc tả: một dãy tuyến tính các phần tử có cùng kiểu Ðộ dài của tập tin là không giới hạn Kiểu phần tử có thể là kiểu sơ cấp hoặc kiểu cấu trúc có kích thước cố định như

mảng hoặc mẩu tin

 Mode read, mode write, con trỏ tập tin

 Phép toán: open, read, write, EOF, close

Trang 43

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ớ

ngoài thông qua buffer

Trang 44

Nguyễn Văn Linh - Programmi

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: (Trang 28)
 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 (Trang 40)

TỪ KHÓA LIÊN QUAN