intTypePromotion=1
ADSENSE

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

Chia sẻ: Dat Dat | Ngày: | Loại File: PPT | Số trang:20

84
lượt xem
11
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Dưới đây là bài giảng Maple: Bài 6 - Cấu trúc dữ liệu trong maple, mời các bạn tham khảo bài giảng để nắm bắt những nội dung về cấu trúc dữ liệu trong Maple bao gồm dãy (sequence); tập hợp (set); danh sách (list); bảng (table); mảng (array). Bài giảng phục vụ cho các bạn chuyên ngành Toán học và những ngành có liên quan.  

Chủ đề:
Lưu

Nội dung Text: Bài giảng Maple: Bài 6 - Cấu trúc dữ liệu trong maple

  1. CẤU TRÚC DỮ LiỆU TRONG  MAPLE    
  2. Cấu trúc dữ liệu trong Maple  Trong 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)
  3. Cấu trúc dữ liệu dãy…  Mô 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.
  4. Cấu trúc dữ liệu dãy…  Maple á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,2
  5. Lệnh dùng để tạo dãy…  seq(f(i),i=low..high); i low low+1 high­1 high f(low) ,f(low+1) , ,f(high­1) ,f(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.
  6. Ví dụ… Làm thế nào tạo ra dãy : 1,4,9,16,25,36,49,64,81. >seq(i^2,i=1..9); 1,4,9,16,25,36,49,64,81
  7. Ví dụ… >tong:=sum(k^2,k=1..n); 1 1 1 1 tong := (n + 1) − (n + 1) + n + 3 2 3 2 6 6 >seq(op(i,tong),i=1..4); 1 3 1 2 1 1 (n + 1) , (n + 1) , n, 3 2 6 6
  8. Ví dụ… > x:=[seq(Pi/i,i=1..9)]; 1 1 1 1 1 1 1 1 x := [π , π , π , π , π , π , π , π , π ] 2 3 4 5 6 7 8 9 > y:= seq(sin(i),i=x); 1 1 1 1 �π �1 �π � y := 0,1, 3, 2, 2 5 − 5 , ,sin � � , 2 − 2 ,sin � � 2 2 4 2 �7 �2 �9 �
  9. Cấu trúc dữ liệu tập hợp…  Tậ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ó.
  10. 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                        
  11. Cấu trúc dữ liệu danh sách…  Mộ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,d
  12. Cấu trúc dữ liệu danh sách…  Có 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
  13. 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]
  14. Dùng subsop() tạo một list…  subsop(index1=rep1,…,indexn=repn,expr); Trong biểu thức thay thế n giá trị tại n vị trí   subsop có thể dùng thay thế một lúc nhiều  phần tử của list,set…
  15. 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]
  16. Cấu trúc dữ liệu bảng…  table(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….  
  17. Cấu trúc dữ liệu mảng…  Cá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ố.
  18. Sparse,symmetric,identity,anti symmetric…  sparse: 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ị
  19. Các lệnh hữu dụng…  map(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. 
  20. Sắp xếp các số hạng…  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ố. 
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2