Bài giảng Maple - Bài 6 Cấu trúc dữ liệu

Sort(expr); Sắp xếp theo thứ tự abc hoặc số mũ. Sort(expr,varlist,plex); Sắp xếp bt theo kiểu từ điển. Sort(expr,varlist,tdeg); Sắp xếp theo tổng bậc. Sort(list); Sort(list,odering); Sắp xếp list theo trật tự cho bởi odering. String: sắp xếp theo xâu kí tự. Numeric:sắp xếp theo trật tự số.

ppt20 trang | Chia sẻ: truongthinh92 | Lượt xem: 2135 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài giảng Maple - Bài 6 Cấu trúc dữ liệu, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
CẤU TRÚC DỮ LiỆU TRONG MAPLECấu trúc dữ liệu trong MapleTrong Maple có 5 lọai cấu trúc dữ liệu chính:Dãy (sequence)Tập hợp (set)Danh sách (list)Bảng (table)Mảng (array)Cấu trúc dữ liệu dãyMô tả:Là một nhóm các đối tượng được sắp xếp theo thứ tự và ngăn cách nhau bởi dấu phẩy.Dãy có thể được gán cho 1 biến.VD: x:=a,b,c,d.Kí hiệu NULL dùng để thay thế cho một dãy trống.Cấu trúc dữ liệu dãyMaple áp dụng định giá hòan tòan trong quá trình tạo ra dãy.> S1:=a,b,c;> S2:=S1,d,e; S2:=a,b,c,d,e>S1:=a,1,2;>S2:=S1,NULL,S1; S2:=a,1,2,a,1,2Lệnh dùng để tạo dãyseq(f(i),i=low..high);seq(f(x),x=expression));Tạo ra một dãy mà các thành phần của nó co được bằng cách cho f tác động lên các thành phần của biểu thức expression.Expression có thể là một tập hợp,danh sách hoặc một biểu thức dạng tổng tích.ilowlow+1high-1highf(low),f(low+1),f(high-1),f(high),,Ví dụ>seq(i^2,i=1..9); 1,4,9,16,25,36,49,64,81Làm thế nào tạo ra dãy : 1,4,9,16,25,36,49,64,81.Ví dụ>tong:=sum(k^2,k=1..n);>seq(op(i,tong),i=1..4);Ví dụ> x:=[seq(Pi/i,i=1..9)];> y:= seq(sin(i),i=x);Cấu trúc dữ liệu tập hợpTập hợp trong Maple được bao trong {}. Khác với dãy, các phần tử của tập hợp phải khác nhau.Trên tập hợp có các phép tóan union(hợp) , intersect(giao) và minus(hiệu).Truy cập phần tử của tập hợp thông qua chỉ số của nó.Ví dụ>set1:= {x,y,z}; set1:={x,y,z}>set2:={a,b,x,z}; set2:={a,b,x,z}>set3:=set1 union set2; set3:={x,y,z,a,b};>set4:= set1 minus set2; set4:={y}>set5:= set1 intersect set2; set5:={x,z}>set5[2]; z Cấu trúc dữ liệu danh sáchMột danh sách(list) trong Maple được bao bọc trong [ ].Giống như dãy, danh sách có thể lưu trữ các phần tử giống nhau.Danh sách khác gì dãy???> x:= [a,b],[c,d] #dãy gồm 2 list> x:=(a,b),(c,d) #dãy a,b,c,dCấu trúc dữ liệu danh sáchCó thể dùng lệnh op để truy cập phần tử trong danh sách.Hoặc cách khác dùng listname[index]. Với cách này ta có thể thay đổi phần tử của danh sách.> ds:=[a,b,c,d,e];> op(4,ds); d> ds[3]; c> ds[2]:=x;> ds; a,x,c,d,e Ví dụ ghép hai list> list1:=[a,b,c];> list2:=[1,2,3,4];> list3:= list1 , list2; list3:=[a,b,c],[1,2,3,4]> list4:=[op(list1),op(list2)]; list4:=[a,b,c,1,2,3,4]Dùng subsop() tạo một listsubsop(index1=rep1,,indexn=repn,expr);subsop có thể dùng thay thế một lúc nhiều phần tử của list,setTrong biểu thức thay thế n giá trị tại n vị trí Ví dụ> ds:=[a,1,c,d,2]; ds:=[a,1,c,d,2] > subsop(2=b,5=e,ds); [a,b,c,d,e]Cấu trúc dữ liệu bảngtable(F,L);F(option): hàm chỉ mục.L(option):danh sách hay tập hợp các giá trị khởi tạo cho bảng.Không giống như mảng có chỉ số (indices) là các số nguyên chỉ số (khóa) của table có thể là tùy ý.Hàm table tạo ra bảng với giá trị khởi đầu được chỉ ra bởi L.Nếu L có dạng dãy các đẳng thức thì vtrái sẽ là khóa ,vphải là giá trị ứng với khóa.Nếu L có dạng dãy của các gía trị thì các chỉ số là 1,2,3,.Dùng hai hàm indices(bảng) và entries(bảng) để tạo ra một dãy gồm các khóa và giá trị của bảng.Trật tự của các mục trong bảng không nhất thiết giống như thứ tự nhập vào bảng.Tuy nhiên, luôn có sự tương ứng 1-1 giữa khóa và giá trị.Bảng là công cụ thích hợp cho việc lập sổ tra cứu. Cấu trúc dữ liệu mảngCác chỉ số của mảng phải là số nguyên. Phạm vi của chỉ số được chỉ rõ trong lệnh khai báo mảng array.Để tạo mảng cần chỉ rõ:Số chiều.Phạm vi chỉ số.Sparse,symmetric,identity,antisymmetricsparse: gán các phần tử của mảng bằng 0.symmetric: dùng để tạo ma trận đối xứng.antisymetric:tính phản xứng.identity: tạo ma trân đơn vịCác lệnh hữu dụngmap(f,expr);Tính giá trị hàm với đối số là 1 thành phần biểu thức.Expr có thể list,set,phương trình,mảng,bảng. Hoặc có dạng tổng,tích. Sắp xếp các số hạngSort(expr);Sắp xếp theo thứ tự abc hoặc số mũ.Sort(expr,varlist,plex);Sắp xếp bt theo kiểu từ điển.Sort(expr,varlist,tdeg);Sắp xếp theo tổng bậc.Sort(list);Sort(list,odering);Sắp xếp list theo trật tự cho bởi odering.String: sắp xếp theo xâu kí tự.Numeric:sắp xếp theo trật tự số.

Các file đính kèm theo tài liệu này:

  • pptmaple_baiso6_cautrudulieu_2253.ppt