CHƯƠNG 4: TẬP HỢP
lượt xem 9
download
Tập hợp các thành viên (members) hoặc phần tử (elements) như khái niệm toán học. • Các phần tử của tập hợp phải khác nhau • Tập hợp có thứ tự hoặc không có thứ tự. • Ở đây ta sẽ xét tập hợp có thứ tự, tức là trên tập hợp S có các quan hệ
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: CHƯƠNG 4: TẬP HỢP
- CHƯƠNG 4: TẬP HỢP Nguyễn Văn Linh Khoa Công nghệ Thông tin - Truyền thông Đại học Cần Thơ Nguyễn Văn Linh
- NỘI DUNG • Khái niệm tập hợp • Các phép toán trên tập hợp • Cài đặt tập hợp • Từ điển • Bảng băm Nguyễn Văn Linh
- KHÁI NIỆM TẬP HỢP • Tập hợp các thành viên (members) hoặc phần tử (elements) như khái niệm toán học. • Các phần tử của tập hợp phải khác nhau • Tập hợp có thứ tự hoặc không có thứ tự. • Ở đây ta sẽ xét tập hợp có thứ tự, tức là trên tập hợp S có các quan hệ < thỏa mãn: • Với mọi a, b trong S thì a
- BIỂU DIỄN TẬP HỢP (1) • Liệt kê các phần tử trong cặp dấu ngoặc {} – x∈ S : x là một phần tử của tập hợp S – x∉ S : x không là một phần tử của tập hợp S ∅ : tập hợp rỗng, không có thành viên – VD: A={1,2} B= {1,2,3} Nguyễn Văn Linh
- BIỂU DIỄN TẬP HỢP (2) • Cho hai tập hợp A và B: – A là 1 bộ phận của B, kí hiệu A ⊆ B: nếu mọi phần tử của A đều là phần tử của B • VD: A ⊆ B – Tập hợp A và B bằng nhau, kí hiệu A = B:nếu A⊆ B và B⊆ A – Hợp của hai tập hợp: A∪B={x| x⊆ A hoặc x∈B} – Giao của hai tập hợp: A∩B={x| x∈A và x∈B} – Hiệu của hai tập hợp: A\B={x| x∈A và x∉B} Nguyễn Văn Linh
- CÁC PHÉP TOÁN TRÊN TẬP HỢP Diễn giải Phép toán Tạo tập hợp S rỗng Make_Null_Set(S) Kiểm tra xem tập hợp S có rỗng? Empty_Set(S) Kiểm tra xem X có thuộc S? Member(X,S) Thêm phần tử X vào tập hợp S Insert_Set(X,S) Xoá phần tử X trong tập hợp S Delete_Set(X,S) C=A∪ B Union(A, B,C) C=A∩ B Intersection(A, B, C) Difference(A,B,C) C=A\B Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP • CÀI ĐẶT BẰNG VECTƠ BIT • CÀI ĐẶT BẰNG DANH SÁCH LIÊN KẾT Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT (1) • Thường được dùng khi tập hợp của ta là 1 tập con của tập số nguyên, có giá trị từ 0..n-1. Khi đó ta sẽ dùng 1 mảng các bit có kích thước n để lưu trữ tập hợp • Nếu i thuộc tập hợp thì phần tử thứ i của mảng có giá trị 1 • VD: muốn lưu trữ các tập có giá trị phần tử từ 0..9. Ta dùng mảng có tối đa 10 phần tử. • Tập hợp A={2,5,7,9} sẽ được biểu diễn bởi: 0 1 2 3 4 5 6 7 8 9 0 0 1 0 0 1 0 1 0 1 Nguyễn Văn Linh
- CÀI TẬP HỢP ĐẶT BẰNG VECTƠ BIT (2) • Khai báo const Max_Length = 100; // giá trị phần tử lớn nhất typedef int Set [Max_Length]; • Tạo tập hợp rỗng: void Make_Null_Set (Set &a){ int i; for(i=0;i
- CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT (3) • Tạo giao của 2 tập hợp void Set_Intersection(Set a,Set b,Set &c){ for (int i=0; i
- CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT (3) • Xét xem một phần tử có thuộc một tập hợp hay không? int Member (int i, Set a) { if (iMax_Length-1) return 0; return a[i]==1; } Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT (3) • Cài đặt Hợp của 2 tập hợp bằng cách dùng hàm member void Set_Union (Set a,Set b,Set &c){ int i; for (i=0;i
- CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT (3) • Xen một phần tử i vào trong tập hợp a void Insert_Set (int i, Set &a){ if ((iMax_Length-1)) printf(“Gia tri khong hop le\n”); else a[i]=1; } Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT (3) • Xoá một phần tử i trong tập hợp a void Delete_Set (int i, Set &a){ if ((iMax_Length-1)) printf(“Gia tri khong hop le\n”); else a[i]=0; } Nguyễn Văn Linh
- ĐÁNH GIÁ PHƯƠNG PHÁP CÀI ĐẶT TẬP HỢP BẰNG VECTƠ BIT • Ưu điểm: – Dễ cài đặt. – Thực hiện nhanh • Nhược điểm: – Không thể biểu diễn cho các tập hợp có số lượng phần tử lớn bất kỳ. Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG DSLK(1) • Khai báo typedef int Element_Type; typedef struct Node { Element_Type Data; Node * Next; }; typedef Node * Position; typedef Position Set; Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG DSLK (2) • Kiểm tra một phẩn tử có thuộc tập không? int Member(Element_Type X, Set S){ Position P; int Found = 0; P = S; while ((P->Next != NULL) && (!Found)) if (P->Next->Data == X) Found = 1; else P = P->Next; return Found; } Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG DSLK(3) • Thêm một phần tử vào tập void Insert_Set(Element_Type X, Set &S){ Position T,P; int Finish=0; int Found=0; P=S; while ((P->Next!=NULL)&&(!Finish) &&(!Found)) if (P->Next->Data = X) Found = 1; else if (P->Next->DataNext; else Finish=1; // Neu X khong ton tai trong S thi xen X vao vi tri P if(!Found) { T=(Node*)malloc(sizeof(Node)); T->Data=X; T->Next=P->Next; P->Next=T; } } Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG DSLK(4) • Xóa một phần tử khỏi tập void Delete_Set(Element_Type X, Set &S) { Position T,P=S; int Found=0; while ((P->Next!=NULL)&& (!Found)) if (P->Next->Data==X) Found =1; else P=P->Next; if (Found){ T=P->Next; P->Next=T->Next; free(T); } } Nguyễn Văn Linh
- CÀI ĐẶT TẬP HỢP BẰNG DSLK(5) • Hợp của hai tập hợp void Set_Union(Set A, Set B, Set &C) { Position P; Make_Null_Set(C); P= A; while (P->Next!=NULL) { Insert_Set (P->Next->Data,C); P=P->Next; } P=B; while (P->Next != NULL){ if (!Member(P->Next->Data,A)) Insert_Set (P->Next->Data,C); P=P->Next; } } Nguyễn Văn Linh
CÓ THỂ BẠN MUỐN DOWNLOAD
-
CHƯƠNG 4: TRẠNG THÁI TẬP HỢP CHẤT
9 p | 386 | 54
-
Giáo án Đại số 10 chương 4 bài 2: Bất phương trình và hệ bất phương trình một ẩn
12 p | 776 | 52
-
Giáo án Đại số 9 chương 4 bài 3: Phương trình bậc hai một ẩn
8 p | 468 | 22
-
Bài giảng Đại số 8 chương 4 bài 1: Liên hệ giữa thứ tự và phép cộng
28 p | 225 | 21
-
Bài giảng Giải tích 12 chương 4 bài 4: Phương trình bậc hai với hệ số thực
11 p | 188 | 20
-
Đề kiểm tra ôn tập chương 4 đại số 10
2 p | 248 | 19
-
Chương 4: Hiđrocacbon – nhiên liệu
14 p | 99 | 16
-
Bài tập trắc nghiệm Chương 4: Điện xoay chiều
12 p | 97 | 12
-
Giáo án Toán 1 chương 4 bài 7: Ôn tập các số đến 10
6 p | 154 | 9
-
Giáo án Âm nhạc 7 bài 2: Nhạc lí: Nhịp 4/4. Tập đọc nhạc: TĐN số 2
8 p | 1007 | 9
-
Bài giảng Số học 6 chương 1 bài 4: Số phần tử của một tập hợp. Tập hợp con
17 p | 172 | 8
-
Giải bài tập Ôn tập chương 4 Hình lăng trụ đứng, hình chóp đều SGK Hình học 8 tập 2
10 p | 147 | 8
-
Giáo án Số học 6 chương 1 bài 4: Số phần tử của một tập hợp. Tập hợp con
14 p | 140 | 8
-
Giáo án Toán 1 chương 4 bài 8: Ôn tập các số đến 100
7 p | 131 | 5
-
Giáo án môn Toán lớp 7 sách Kết nối tri thức: Bài tập cuối chương 4
9 p | 38 | 5
-
Đại số lớp 10 về Mệnh đề - Tập hợp
48 p | 47 | 4
-
Giáo án Toán lớp 8 - Chương 4, Bài 2: Lựa chọn dạng biểu đồ để biểu diễn dữ liệu (Sách Chân trời sáng tạo)
14 p | 12 | 3
-
Giáo án Toán lớp 8: Bài tập cuối chương 4 (Sách Chân trời sáng tạo)
6 p | 6 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn