Giáo trình MS SQL Server 7.0

83 567 0
Giáo trình MS SQL Server 7.0

Đ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

Giáo trình MS SQL Server 7.0

Collected by The_Wall (11/10/2005) M c tiêu Ki n th c c b n c n có h c ch ng Tài li u tham kh o có liên quan n ch ng N i dung: I.1 - S c n thi t ph i phân tích gi i thu t I.2 - Th i gian th c hi n c a gi i thu t I.3 - T su t t ng ph c t p c a gi i thu t I.4 - Cách tính ph c t p I.5 - Phân tích ch ng trình quy V n nghiên c u c a trang k ti p Trong ch ng s nghiên c u v n sau: · S c n thi t ph i phân tích gi i thu t · Th i gian th c hi n c a ch · T su t t ng ng trình ph c t p c a gi i thu t · Tính th i gian th c hi n c a ch · Phân tích ch I.1- S ng trình ng trình quy C N THI T PH I PHÂN TÍCH GI I THU T Trong gi i m t tốn có th có m t s gi i thu t khác nhau, v n c n ph i ánh giá gi i thu t ó l a ch n m t gi i thu t t t (nh t) Thơng th ng ta s c n c vào tiêu chu n sau: 1.- Gi i thu t úng n 2.- Gi i thu t n gi n 3.- Gi i thu t th c hi n nhanh V i yêu c u (1), ki m tra tính úng n c a gi i thu t có th cài t gi i thu t ó cho th c hi n máy v i m t s b d li u m u r i l y k t qu thu c so sánh v i k t qu ã bi t Th c cách làm khơng ch c ch n b i có th gi i thu t úng v i t t c b d li u ã th nh ng l i sai v i m t b d li u ó V l i cách làm ch phát hi n gi i thu t sai ch ch a ch ng minh c úng Tính úng n c a gi i thu t c n ph i c ch ng minh ng toán h c T t nhiên u không n gi n v y s không c p n ây Khi vi t m t ch ng trình s d ng m t vài l n yêu c u (2) quan tr ng nh t Chúng ta c n m t gi i thu t d vi t ch ng trình nhanh chóng có c k t q a , th i gian th c hi n ch ng trình khơng c cao dù ch ng trình ó c ng ch s d ng m t vài l n mà Tuy nhiên m t ch Giáo trình mơn Phân tích Gi i Thu t – ng trình I c s d ng nhi u l n thì yêu c u ti ït ki m th i gian C C N TH Trang Collected by The_Wall (11/10/2005) th c hi n ch ng trình l i r t quan tr ng c bi t i v i nh ng ch ng trình mà th c hi n c n d li u nh p l n ó yêu c u (3) s c xem xét m t cách k Ta g i hi u qu th i gian th c hi n c a gi i thu t I.2- TH I GIAN TH C HI N C A GI I THU T I.2.1- Th i gian th c hi n ch ng trình I.2.2n v o th i gian th c hi n I.2.3- Th i gian th c hi n tr ng h p x u nh t M t ph ng pháp xác nh hi u qu th i gian th c hi n c a m t gi i thu t l p trình o ng th i gian th c hi n c a ho t ng m t máy tính xác nh i v i t p h p c ch n l c li u vào Th i gian th c hi n không ch ph thu c vào gi i thu t mà ph thu c váo t p ch th a máy tính, ch t l ng c a máy tính k x o c a ng i l p trình S thi hành c ng có th u ch nh th c hi n t t t p c bi t d li u vào c ch n v t qua tr ng i này, nhà khoa h c máy tính ã ch p nh n tính ph c t p c a th i gian c ti p c n nh m t s o l ng c n s th c thi c a gi i thu t Thu t ng tính hi u qu s c p n s o l ng c bi t i i s ph c t p th i gian tr ng h p x u nh t I.2.1- Th i gian th c hi n ch ng trình Th i gian th c hi n m t ch ng trình m t hàm c a kích th kích th c ( l n) c a d li u vào Ví d 1-1: Ch t h ng s c d li u vào, ký hi u T(n) ó n ng trình tính t ng c a n s có th i gian th c hi n T(n) = cn ó c Th i gian th c hi n ch ng trình m t hàm khơng âm, t c T(n) ≥0 ∀n≥0 I.2.2n v o th i gian th c hi n n v c a T(n) không ph i n v o th i gian bình th ng nh gi , phút giây mà th c xác nh b i s l nh c th c hi n m t máy tính lý t ng ch Ví d 1-2: Khi ta nói th i gian th c hi n c a m t ch ng trình y c n cn ch th th c thi ng ng trình T(n) = cn có ngh a I.2.3- Th i gian th c hi n tr ng h p x u nh t Nói chung th i gian th c hi n ch ng trình khơng ch ph thu c vào kích th c mà cịn ph thu c vào tính ch t c a d li u vào Ngh a d li u vào có kích th c nh ng th i gian th c hi n ch ng trình có th khác Ch ng h n ch ng trình s p x p dãy s nguyên t ng d n, ta cho vào dãy có th t th i gian th c hi n khác v i ta cho vào dãy ch a có th t , ho c ta cho vào m t dãy ã có th t t ng th i gian th c hi n c ng khác so v i ta cho vào m t dãy ã có th t gi m Vì v y th ng ta coi T(n) th i gian th c hi n ch ng trình tr ng h p x u nh t li u vào có kích th óc n, t c là: T(n) th i gian l n nh t th c hi n ch ng trình i v i m i d li u vào có kích th c n I.3- T SU T T NG VÀ Giáo trình mơn Phân tích Gi i Thu t – PH C T P C A GI I THU T I C C N TH Trang Collected by The_Wall (11/10/2005) I.3.1- T su t t ng I.3.2- Khái ni m ph c t p c a gi i thu t I.3.1- T su t t ng Ta nói r ng hàm khơng âm T(n) có n0 cho T(n) f(n) v i m i n n0 Ta có th ch ng minh su t t ng f(n) c a nó” su t t ng (growth rate) f(n) n u t n t i h ng s c c r ng “Cho m t hàm không âm T(n) b t k , ta ln tìm ct Ví d 1-3: Gi s T(0) = 1, T(1) = t ng quát T(n) = (n+1)2 t n0 = c = v i m i n d dàng ch ng minh r ng T(n) = (n+1)2 4n2 v i m i n 1, t c t su t t ng c a T(n) n2 Ví d 1-4: T su t t ng c a hàm T(n) = 3n3 + 2n2 n3 Th c v y, cho n0 = c = ta d dàng ch ng minh r ng v i m i n 3n3 + 2n2 5n3 I.3.2- Khái ni m ph c t p c a gi i thu t Gi s ta có hai gi i thu t P1 P2 v i th i gian th c hi n t ng ng T1(n) = 100n2 (v i t su t t ng n2) T2(n) = 5n3 (v i t su t t ng n3) Gi i thu t s th c hi n nhanh h n? Câu tr i ph thu c vào kích th c d li u vào V i n < 20 P2 s nhanh h n P1 (T2a[j] then Swap(a[j-1], a[j]); end; Trong cách vi t trên, ch ng trình Bubble g i ch ng trình Swap, ó tính th i gian th c hi n c a Bubble, tr c h t ta c n tính th i gian th c hi n c a Swap D th y th i gian th c hi n a Swap O(1) ch bao g m l nh gán Trong Bubble, l nh {3} g i Swap nên ch t n O(1), l nh {2} th c hi n n-i l n, m i l n t n O(1) nên t n O(n-i) L nh {1} th c hi n n-1 l n nên I.5- PHÂN TÍCH CÁC CH NG TRÌNH QUY I.5.1- Thành l p ph ng trình quy I.5.2- Gi i ph ng trình quy V i ch ng trình có g i ch ng trình quy, ta khơng th áp d ng cách tính nh a trình bày m c I.4.4 b i m t ch ng trình quy s g i b n thân ph quy V i ch ng trình quy, tr c h t ta c n thành l p ph ng trình quy, sau ó gi i ng trình quy, nghi m c a ph ng trình quy s th i gian th c hi n c a ch ng trình I.5.1- Thành l p ph ng trình quy Ph ng trình quy m t ph ng trình bi u di n m i liên h gi a T(n) T(k), ó T(n) th i gian th c hi n ch ng trình v i kích th c d li u nh p n, T(k) th i gian th c hi n ch ng trình v i kích th c d li u nh p k, v i k < n thành l p c ph ng trình quy, ta ph i c n c vào ch ng trình quy Ví d 1-9: Xét hàm tính giai th a vi t b ng gi i thu t quy nh sau: function Giai_thua(n:integer): integer; begin if n=0 then Giai_thua :=1 else Giai_thua := n* Giai_thua(n-1); end; i T(n) th i gian th c hi n vi c tính n giai th a, T(n-1) th i gian th c hi n vi c tính n-1 giai th a Trong tr ng h p n=0 ch ng trình ch th c hi n m t l nh gán Giai_thua:=1, nên t n O(1), ó ta có T(0) = C1 Trong tr ng h p n>0 ch ng trình ph i g i quy Giai_thua(n-1), vi c i quy t n T(n-1), sau có k t qu c a vi c g i quy, ch ng trình ph i nhân k t qu ó i n gán cho Giai_thua Th i gian th c hi n phép nhân phép gán m t h ng C2 V y ta có Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang Collected by The_Wall (11/10/2005) ây ph ng trình quy tính th i gian th c hi n c a ch ng trình quy Giai_thua Ví d 1-10: Chúng ta xét th t c MergeSort m t cách phác th o nh sau: function MergeSort (L:List ; n:integer) : List; var L1,L2 : List; begin if n = then return(L) else begin Chia L thành n a L1 L2 , m i m t n a có dài n/2; return(Merge(MergeSort (L1 , n/2), MergeSort(L2, n/2))); end; end; Ch ng h n s p x p danh sách L g m ph n t 7, 4, 8, 9, 3, 1, 6, ta có mơ hình minh h a a MergeSort nh sau: Hàm MergeSort nh n m t danh sách có dài n tr v m t danh sách ã c s p x p Th c Merge nh n hai danh sách ã c s p L1 L2 m i danh sách có dài n/2, tr n chúng l i v i c m t danh sách g m n ph n t có th t Gi i thu t chi ti t c a Merge ta s bàn sau, ch ý r ng th i gian Merge danh sách có dài n/2 O(n) Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang Collected by The_Wall (11/10/2005) G i T(n) th i gian th c hi n MergeSort m t danh sách n ph n t T(n/2) th i gian th c hi n MergeSort m t danh sách n/2 ph n t , ta có th vi t ph ng trình quy nh sau: Trong ó c1 th i gian ph i t n L có dài Trong tr ng h p n > 1, th i gian c a MergeSort c chia làm hai ph n Ph n g i quy MergeSort m t danh sách có dài n/2 T(n/2) ó ta có 2T(n/2) Ph n th hai bao g m phép th n >1, chia danh sách L thành hai n a b ng Merge Ba thao tác l y th i gian không i i v i phép th ho c t l v i n i v i ng t Merge Nh v y h ng c2 c ch n c2n th i gian t ng làm vi c ó ngo i tr g i quy I.5.2- Gi i ph Có ba ph ng trình quy ng pháp gi i ph ng trình 1.- Ph ng pháp truy h i 2.- Ph quy: ng pháp oán nghi m 3.- L i gi i t ng quát c a m t l p ph Ph ng trình quy ng pháp truy h i Dùng quy thay th b t k T(m) v i m < n vào phía ph i c a ph ng trình cho n t t T(m) v i m > c thay th b i bi u th c c a T(1) Vì T(1) ln h ng nên có cơng th c c a T(n) ch a s h ng ch liên quan n n h ng s Gi i ph ng trình Ví d 1-10: Gi i ph ng trình: Ta có: Gi s n = 2k, trình suy r ng s k t thúc i =k, ó ta có: T(n) = 2kT(1) + kC2n Vì 2k = n nên k = logn v i T(1) =C1 nên ta có Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang Collected by The_Wall (11/10/2005) T(n) = C1n + C2nlogn Hay T(n) O(nlogn) oán nghi m Ta oán m t nghi m f(n) dùng ch ng minh quy n p Thông th ch ng t r ng T(n) f(n) v i m i n ng f(n) m t hàm quen thu c nh logn, n, nlogn, n2, n3, 2n, n!, nn ch ốn d ng c a f(n) ó có m t vài tham s ch a xác nh (ch ng h n f(n) = an v i a ch a xác nh) trình ch ng minh quy n p ta s suy di n giá tr thích p c a tham s Ví d 1-11: Gi i ph ng trình quy Gi s oán f(n) = anlogn V i n = ta th y r ng cách ốn nh v y khơng cb i anlog n có giá tr khơng ph thu c vào giá tr c a a Vì th ta th ti p theo f(n) = anlogn + b V i n = ta có, T(1) = C1 f(1) = b, mu n T(1) Gi s r ng T(k) Gi s n f(1) b C1 (*) aklogk + b v i m i k < n (I.2).Ta s ch ng minh T(n) anlogn + b 2, t (I.1) ta có T(n) = 2T(n/2) + C2n Áp d ng (I.2) v i k = n/2 < n ta có: T(n) = 2T(n/2) + C2n 2[an/2log(n/2) + b] + C2n T(n) anlogn - an + 2b + C2n T(n) (anlogn + b) + [b + (C2 - a)n] N u l y a T(n) (anlogn + b) + [b +(C2 - C2 - b )n ] T(n) (anlogn + b) + (1-n) b T(n) an logn + b C2 + b (**) ta N u ta l y a b cho c (*) (**) u tho mãn T(n) D dàng ta có b = C1 a= C1 +C2 ta c T(n) Giáo trình mơn Phân tích Gi i Thu t – I c an logn + b v i m i n (C1 + C2)nlogn + C1 v i m i n C C N TH Trang Collected by The_Wall (11/10/2005) Hay nói cách khác T(n) O(nlogn) i gi i t ng quát cho m t l p ph ng trình quy gi i tốn kích th c n, ta chia toán ã cho thành a tốn con, m i tóan có kích th c n/b Gi i toán t ng h p k t qu l i c k t qu c a toán ã cho i toán c ng làm nh v y K thu t s d n n m t ch ng trình quy Gi thi t r ng m i tốn kích th c l y m t n v th i gian th i gian chia tốn kích th c n thành tốn kích th c n/b t ng h p k t qu t toán c l i gi i c a toán ban u d(n) (Ch ng h n i v i thí d MergeSort, có a = b = 2, d(n) = C2n/C1 Xem C1 m t n v ) G i T(n) th i gian Ta s d ng ph Gi s n = bk ta gi i tốn kích th ng pháp truy h i gi i ph c n ta có ph ng trình quy: ng trình c: T(n/bk) = T(1) = Thay vào v i i = k ta có: Hàm ti n tri n, nghi m thu n nh t nghi m riêng Trong ph ng trình quy (I.1) hàm th i gian d(n) c g i hàm ti n tri n (driving function) Trong công th c (I.2), ak = nlogba c g i nghi m thu n nh t (homogeneous solutions) Nghi m thu n nh t nghi m xác d(n) = v i m i n Nói m t cách khác, nghi m thu n nh t bi u di n th i gian gi i t t c toán Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 10 Collected by The_Wall (11/10/2005) Gi i thu t s p x p t p tin F có n m u tin ta s d ng t p tin F1, F2, G1 G2 Kh i u ta phân ph i m u tin c a t p tin ã cho F luân phiên vào hai t p tin F1 F2 Nh v y hai t p tin c xem nh c t ch c thành ng dài ng c 1: c ng, m i ng dài t hai t p tin F1, F2 tr n hai ng thành dài ghi luân phiên vào hai t p tin G1, G2 i vai trò c a F1 cho G1, F2 cho G2 ng c 2: c ng, m i ng dài t hai t p tin F1, F2 tr n hai ng thành dài ghi luân phiên vào hai t p tin G1, G2 i vai trò c a F1 cho G1, F2 cho G2 Quá trình c ti p t c sau i b c dài c a m t ng 2i N u 2i t thúc, lúc ó t p tin G2 s r ng t p tin G1 ch a m u tin ã c s p ánh giá gi i thu t s p x p tr n Ta th y gi i thu t k t thúc sau i b c v i i logn M i b c ph i p tin, m i t p tin có trung bình n/2 m u tin Gi s m i m t kh i l u tr n c ghi truy xu t kh i kh i mà c n logn b n gi i thu t c t t p tin ghi vào c b m u tin m i b c c v y t ng c ng c n phép Ví d 4-2: Cho t p tin F có 23 m u tin v i khóa s nguyên nh sau: F: 28 31 93 96 10 40 54 85 65 30 39 90 13 10 69 77 10 22 b t u ta phân ph i m u tin c a F luân phiên vào hai t p tin F1 F2 thành ng có dài 28 31 93 28 G2: 31 54 96 40 85 B c 1: Tr n hai t p tin G1, G2: G1: 10 93 10 40 30 39 13 ng 96 65 90 77 10 dài c a F1 F2 54 85 30 10 39 69 22 c t ch c F1 F2 c 65 13 90 69 77 22 ng 10 dài ghi luân phiên vào 10 F1 F2 B c 2: i vai trò c a F1 G1, F2 G2 cho Tr n ng dài hai t p tin F1 F2 c ng dài r i ghi luân phiên vào hai t p tin G1 G2: G1: G2: 10 28 31 40 93 54 65 85 96 Giáo trình mơn Phân tích Gi i Thu t – 13 I 30 39 10 69 77 F1 90 10 22 F2 C C N TH Trang 69 Collected by The_Wall (11/10/2005) B c 3: i vai trò c a F1 G1, F2 G2 cho Tr n ng dài hai t p tin F1 F2 c ng dài r i ghi luân phiên vào hai t p tin G1 G2: G1: G2: 13 10 28 31 40 93 96 30 39 54 65 85 10 10 22 69 77 F1 90 F2 B c 4: i vai trò c a F1 G1, F2 G2 cho Tr n ng dài hai t p tin F1 F2 c ng dài 16 r i ghi luân phiên vào t p tin G1 G2 G1: G2: 10 13 28 30 31 39 40 54 65 85 90 93 96 F1 10 10 22 69 77 F2 B c 5: i vai trò c a F1 G1, F2 G2 cho Tr n tin F1 F2 c1 ng dài 23 r i ghi vào t p tin G1 G1: ng dài 16 hai t p 8 10 10 10 13 22 28 30 31 39 40 54 65 77 85 90 93 96 T p tin G1 ch a m u tin ã Ch c s p cịn t p tin G2 r ng ng trình procedure Merge(k:integer; f1,f2,g1,g2: File of RecordType); {Th t c tr n ng dài k hai t p tin f1 f2 thành ghi luân phiên vào hai t p tin g1 g2} ng dài 2k var OutSwithh : boolean; {N u OutSwitch = TRUE ghi vào t p tin g1, ng c l i ghi vào g2} Winner: integer; { ch nh m u tin hi n hành hai t p tin f1 f2 s c ghi t p tin g1 ho c g2} Used: array[1 2] of integer; { Used[ij] ghi s m u tin ã c c ng hi n t i c a t p tin fj } Fin : array[1 2] Of boolean; {Fin[j] s có giá tr TRUE n u ã c h t m u tin ng hi n hành c a fj ho c ã d n cu i t p tin fj } Current: array[1 2] Of RecordType; { Current[j] l u m u tin hi n hành c a t p tin f[j]} procedure GetRecord(i:integer); {N u ã c h t m u tin ng hi n hành c a t p tin fi ho c ã n cu i t p tin fi t fin[i] = TRUE n u khơng c m t m u tin c a t p tin fi vào current[i]} begin Used[i] := Used[i] + 1; if (Used[i] = k+1 ) or (i = 1) and ( eof(f1)) or (i = 12 and ( eof(f2)) then fin[i] := TRUE Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 70 Collected by The_Wall (11/10/2005) else if i=1 then Read(f1, current[1]) else read(f2, current[2]); end; begin { Kh i t o } OutSwitch := TRUE; ReSet(f1); ReSet(f2); ReWrite(g1); ReWrite(g2); while (not eof(f1)) or (not eof(f2)) begin {B t u c m u tin t hai ng hi n hành c a hai t p tin f1,f2 } Used[1] := 0; Used[2] := 0; Fin[1] := FALSE ; Fin[2] := FALSE ; GetRecord(1) ; GetRecord(2); while ( not fin[1] ) or (not fin[2]) begin {Tr n hai ng } { Ch n Winner } if Fin[1] then Winner := else if Fin[2] then Winner := else if current[1].key < Current[2].key then Winner := else Winner := 2; if OutSwitch then Write(g1, Current[winner] ) else Write(g2, current[winner] ); GetRecord(Winner); end; OutSwitch := Not OutSwitch; end; end; IV.3.2.C i ti n s p x p tr n Ta th y trình s p x p tr n nói b t u t ng dài ph i sau logn c gi i thu t m i k t thúc Chúng ta có th ti t ki m th i gian b ng cách ch n m t s k thích h p cho k m u tin có th ch a b nh M i l n c vào b nh k m u tin, dùng p x p (ch ng h n dùng QuickSort) s p x p k m u tin ghi luân phiên vào hai t p tin F1 F2 Nh v y b t u s p x p tr n v i t p tin c t ch c thành ng dài k Sau i b c ng k2i Gi i thu t s k t thúc k2i dài m i phép truy xu t kh i s D th y c ta t ng n hay i log Do ó ct c s p x p tr n Ví d 4-3: L y t p tin F có 23 m u tin v i khóa s nguyên nh ví d 4-2 F: 28 31 93 96 10 40 54 85 65 30 39 90 13 10 69 77 10 22 Ta gi s b nh có th ch a c m u tin, ta c l n l t m u tin c a F vào b nh , dùng m t s p x p s p x p chúng ghi phiên vào t p tin F1 F2 Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 71 Collected by The_Wall (11/10/2005) 28 31 10 40 54 93 96 30 39 90 65 85 c 1: Tr n hai t p tin G1, G2: 69 77 10 13 ng dài c a F1 F2 F1 10 22 c G1: 28 31 93 96 10 13 30 39 90 10 40 54 65 85 10 22 69 77 ng dài ghi luân phiên vào F1 G2: F2 F2 F1 F2 c 2: i vai trò c a F1 G1, F2 G2 cho Tr n ng dài t p tin c ng dài 12 r i ghi luân phiên vào t p tin G1 G2: G1: 10 28 31 40 54 65 85 93 96 F1 G2: 8 10 10 13 22 30 39 69 77 90 F2 c 3: tin F1 F2 G1: i vai trò c a F1 G1, F2 G2 cho Tr n c1 ng ghi vào t p tin G1, G2 r ng ng dài 12 t p 8 10 10 10 13 22 28 30 31 39 40 54 65 77 85 90 93 96 T p tin G1 ch a m u tin ã c s p t p tin G2 r ng IV.3.3- Tr n nhi u ng (multiway merge) Gi i thu t s p x p t p tin F có n m u tin ta s d ng m t p tin (m m t s ch n) F[1], F[2], , F[m] Trong tr ng h p m=4 ta có gi i thu t s p x p tr n bình th ng G i h = m/2, ta có n i dung c a ph k m u tin) ng pháp nh sau (ta v n gi s b nh có th ch a Kh i u: M i l n c t t p tin F vào b nh k m u tin, s d ng m t s p x p p x p k m u tin thành m t ng r i ghi luân phiên vào t p tin F[1], F[2], , F[h] c 1: Tr n ng dài k c a h t p tin F[1], F[2], , F[h] thành m t ng dài kh ghi luân phiên vào h t p tin F[h+1], F[h+2], , F[m] i vai trò c a F[i] F[h+i]] cho (v i i h) c 2: Tr n ng dài kh c a h t p tin F[1], F[2], , F[h] thành m t ng dài kh ghi luân phiên vào h t p tin F[h+1], F[h+2], , F[m] i vai trò c a F[i] F[h+i]] cho (v i i h) Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 72 Collected by The_Wall (11/10/2005) dài m i ng gi i thu t k t thúc khi ng ghi F[h+1] Sau i b c c s p m t ánh giá gi i thu t s p x p tr n nhi u n ó t p tin ã ng Theo gi i thu t k t thúc sau i b c, v i n hay M i b c ta ph i c t h p tin ghi vào h t p tin, trung bình m i t p tin có n/h m u tin Ta v n gi s m i kh i l u c b m u tin m i b ta ch c n tr ng h p c ph i truy xu t kh i Do c n phép truy xu t kh i.Ta th y rõ ràng c biêt h = c nên t ng c ng th t c mergeSort nói m t Ví d 4-4: L y t p tin F có 23 m u tin v i khóa s ngun nh ví d 4-2 F: 28 31 93 96 10 40 54 85 65 30 39 90 13 10 69 77 10 22 S d ng t p tin s p x p t p tin F Ta gi s b nh có th ch a c m u tin, ta c l n l t m u tin c a F vào b nh , dùng m t s p x p s p x p chúng ghi phiên vào t p tin F[1], F[2] F[3] nh sau: F[1]: 28 31 65 85 69 F[2]: 93 96 30 39 90 10 22 F[3]: 10 40 54 10 77 13 c 1: Tr n ng ü dài t p tin F[1], F[2], F[3] thành ghi vào t p tin F[4], F[5] F[6] F[4]: 10 28 31 40 54 93 96 10 13 30 39 65 85 90 F[2] F[6]: 10 22 69 77 dài F[1] F[5]: ng F[3] c 2: i vai trò c a F[1] cho F[4], F[2] cho F[5] F[3] cho F[6] Tr n t p tin F[1], F[2], F[3] thành ng dài 23 ghi vào t p tin F[4] ng dài F[4]: 8 10 10 10 13 22 28 30 31 39 40 54 65 77 85 90 93 96 T p tin F[4] ch a m u tin ã IV.4- L U TR c s p F[5] F[6] r ng THÔNG TIN TRONG T P TIN IV.4.1- T p tin tu n t Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 73 Collected by The_Wall (11/10/2005) IV.4.2- T IV.4.3- T IV.4.4- T IV.4.5- C ng t c cho thao tác t p tin p tin b m p tin ch m c u trúc B-cây Trong ph n ta s nghiên c u c u trúc d li u gi i thu t cho l u tr (storing) l y thông tin (retrieving) t p tin c l u tr Chúng ta s coi m t t p tin nh m t chu i tu n t m u tin, m i m u tin bao g m nhi u tr ng (field) M t tr ng có th có dài c nh ho c dài thay i ây ta s xét m u tin có dài c nh kh o sát thao tác t p tin là: · Insert: Thêm m t m u tin vào m t t p tin, · Delete: Xoá m t m u tin t t p tin, · Modify: S a i thông tin m u tin c a t p tin, · Retrieve: Tìm l i thông tin Sau ây ta s nghiên c u m t s c s trình bày t ch c, cách th c ti cách t ch c ó S ánh giá ây ch nhiêu kh i thao tác khác u ph i s c l u t p tin u trúc d li u dùng l u tr t p tin V i m i c u trúc n hành thao tác tìm, thêm, xố m u tin có ánh giá y u ánh giá xem tìm m t m u tin ph i c bao d ng thao tác tìm IV.4.1- T p tin tu n t ch c: T p tin tu n t m t danh sách liên k t c a kh i, m u tin kh i theo m t th t b t k c l u tr Tìm m u tin: Vi c tìm ki m m t m u tin có giá tr xác nh c th c hi n b ng cách c ng kh i, v i m i kh i ta tìm m u tin c n tìm kh i, n u khơng tìm th y ta l i c ti p m t kh i khác Quá trình c ti p t c cho n tìm th y m u tin ho c t qua toàn b kh i c a t p tin tr ng h p ó m u tin khơng t n t i t p tin Thêm m u tin m i: Vi c thêm m t m u tin có th th c hi n n gi n b ng cách a m u tin vào kh i cu i c a t p tin n u nh kh i ó cịn ch tr ng Ng c l i n u kh i cu i ã h t ch xin c p thêm m t kh i m i, thêm m u tin vào kh i m i n i kh i m i vào cu i danh sách a i m u tin: s a i m t m u tin có giá tr cho tr c, ta tìm m u tin c n s a th c hi n s a i c n thi t sau ó ghi l i m u tin vào v trí c t p tin Xoá m u tin: xoá m t m u tin, tr th c hi n m t cách xoá sau ây: ir i c h t ta c ng c n tìm m u tin ó, n u tìm th y ta có th M t xố m u tin c n xoá kh i l u tr nó, n u sau xố, kh i tr nên r ng xố kh i kh i danh sách (gi i phóng b nh ) Hai ánh d u xoá m u tin b ng m t cách ó Ngh a ch xố m u tin m t cách logic, vùng không gian nh v n dành cho m u tin Vi c ánh d u có th c th c hi n b ng m t Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 74 Collected by The_Wall (11/10/2005) · Thay th m u tin b ng m t giá tr ó mà giá tr không bao gi giá tr th t c a t k m t m u tin · M i m t m u tin có m t bít xóa, bình th ng bit xóa c a m u tin có giá tr 0, mu n xóa u tin ta t cho bit xóa giá tr V i ph ng pháp m t m u tin sau b ánh d u xoá c ng có th ph c h i c b ng cách t bit xoá c a m u tin giá tr ánh giá: ây m t ph ng pháp t ch c t p tin n gi n nh t nh ng hi u qu nh t Ta th y t p tin m t danh sách liên k t c a kh i nên thao tác t p tin u òi h i ph i truy xu t h u nh t t c kh i, t kh i u tiên n kh i cu i I IV.4.2- T ng t c cho thao tác t p tin Nh c m c a cách t ch c t p tin tu n t thao tác t p tin r t ch m c i thi n t c thao tác t p tin, ph i tìm cách gi m s phép truy xu t kh i Mu n v y ph i tìm c u trúc cho tìm m t m u tin ch c n phép truy xu t m t s nh kh i c a t p tin t o t ch c t p tin nh v y ph i gi s r ng m i m u tin có m t khố (key), ó m t t p h p tr ng mà c n c vào ó ta có th phân bi t m u tin v i Ch ng h n mã sinh viên m u tin v sinh viên, bi n s xe qu n lí ph ng ti n v n t i ng b Sau ây ta s xét m t s c u trúc nh th IV.4.3- T p tin b m (hash files) ch c: Ta s s d ng b ng b m m l u tr t p tin B ng b m m t b ng có m ph n t , i ph n t c ánh s t n m-1 ( n gi n nh t m ng m t chi u B g m m ph n t B[0], B[1], , B[m-1]) M i ph n t m t tr , tr t i ph n t u tiên c a danh sách liên k t kh i phân ph i m u tin có khóa x vào danh sách liên k t, ta dùng hàm b m (hash function) Hàm b m h(x) ánh x m i giá tr khoá x v i m t s nguyên t n m-1 N u h(x) = i u tin r có khóa x s c a vào m t kh i ó danh sách liên k t c tr b i B[i] Có nhi u ph ng pháp xác nh hàm b m Cách n gi n nh t “nguyên hóa” giá tr khóa x (n u x khơng ph l m t s nguyên) sau ó ta cho h(x) = x MOD m Ví d 4-5: M t t p tin có 24 m u tin v i giá tr khóa s nguyên: 3, 5, 12, ,65, 34, 20, 21, 17, 56, 1, 16, 2, 78, ,94, 38 ,15 ,23, 14, 10, 29, 19, 6, 45, 36 Gi s có th t ch c t p tin vào b ng b m g m ph n t gi s m i kh i có th ch a c t i a m u tin V i m i m u tin r có khóa x ta xác nh h(x) = x MOD a m u tin r vào m t kh i c a danh sách liên k t c tr b i B[h(x)] Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 75 Collected by The_Wall (11/10/2005) Tìm m u tin: tìm m t m u tin r có khóa x, xác nh h(x) ch ng h n h(x) = i ó ta ch c n tìm r danh sách liên k t c tr b i B[i] Ch ng h n tìm m u tin r có khóa 36, ta tính h(36) = 36 MOD = Nh v y n u m u tin r t n t i t p tin ph i thu c m t kh i ó c tr b i B[1] Thêm m u tin: thêm m u tin r có khố x, tr c h t ta ph i tìm xem ã có m u tin t p tin có khóa x ch a N u có ta cho m t thơng báo l i theo gi thi t m u tin khơng có khố trùng Ng c l i ta s tìm m t kh i (trong danh sách kh i c a lô c tr b i B[h(x)]) ch tr ng cho m u tin r thêm vào kh i N u khơng cịn kh i ch cho m u tin i ta yêu c u h th ng c p phát m t kh i m i t m u tin r vào kh i r i n i kh i m i vào cu i danh sách liên k t c a lơ Xố m u tin: xố m u tin r có khố x, tr c h t ta tìm m u tin t bít xố c a Ta c ng có th xố h n m u tin r n u vi c xoá làm kh i tr nên r ng ta gi i phóng kh i (xoá kh i kh i danh sách liên k t kh i) ánh giá: Gi s t p tin có n m u tin m i kh i l u tr c k m u tin t p tin c n n/k kh i Trung bình m i danh sách liên k t có n/km kh i, mà ch tìm m t danh sách liên t nên ta ch ph i truy xu t n/km kh i S nh h n m l n so v i cách t ch c t p tin tu n t (trong p tin tu n t ta c n truy xu t t t c kh i, t c n/k kh i) Ch ng h n v i 24 m u tin nh ví trên, v i cách t ch c t p tin tu n t ta c n úng kh i l u tr (vì m i kh i ch a t i a m u tin) Nh v y tìm m t m u tin, ch ng h n m u tin có khóa 36 ph i c úng kh i (do u tin có khóa 36 n m kh i cu i cùng) Nh ng v i cách t ch c t p tin b ng b m ch n trung bình 24/(3*7) l n c kh i Trong th c t ta ch c n l n c kh i (vì m u tin có khóa 36 m kh i th c a lô c tr b i B[1]) IV.4.4- T p tin ch m c (index file) ch c: M t cách khác th ng g p t p tin c s p x p theo khoá, r i ti n hành tìm ki m nh tìm m t t t n, t c tìm ki m theo t u tiên m i trang th c hi n c u ó ta s d ng hai t p tin: T p tin t p tin ch m c th a (sparse index) T p tin bao g m kh i l u m u tin ã c s p th t theo giá tr khóa T p tin ch m c th a bao g m kh i ch a c p (x, p) ó x khố c a m u tin u tiên m t kh i c a t p tin chính, cịn p tr , tr n kh i ó Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 76 Collected by The_Wall (11/10/2005) xây d ng c m t c u trúc nh v y, tr c h t ta s p x p m u tin theo giá tr khóa phân ph i chúng vào kh i c a t p tin Có hai cách phân ph i là: L p y kh i b i m u tin Ho c ch phân ph i vào kh i m t s m u tin nh ng ch tr ng c a kh i dành cho vi c xen m u tin sau Sau phân ph i m u tin, ta b t u t qua t ng kh i l p ch m c b ng cách l y khoá c a m u tin u tiên c a m i kh i v i a ch kh i t o thành m t p t p tin ch m c Cách phân ph i c p (khóa, a ch ) vào cho kh i c a t p tin ch m c ng c ti n hành b ng m t hai cách nh i v i t p tin Ví d 4-6: Ta có t p tin g m m u tin v i khoá s nguyên: 5, 8, 3, 11, 23, 10, 28, 25, 27, 38, 16, 46, 42, 31 u tiên ta s p th t m u tin theo giá tr khóa: 3, 5, 8, 10, 11, 16, 23, 25, 27, 28, 31, 38, 42, 46 Gi s m i kh i ch a c m u tin, ta có th phân ph i m u tin vào kh i b ng cách p y kh i b i m u tin Sau ó t o t p tin ch m c th a cho t p tin theo cách ã trình bày K t qu ta c c u trúc nh hình sau: Tìm ki m: z tìm m u tin r có khố x, ta ph i tìm c p (z,p) v i z giá tr l n nh t x M u tin r có khố x n u t n t i s n m kh i c tr b i p Ch ng h n tìm m u tin r có khố 11, ta tìm t p tin ch m c ch kh i 2, Ta ch c n tìm m u tin có khố 11 kh i c c p (10, ·), ch a a Tìm m t m u tin m t kh i c a t p tin có th ti n hành b ng tìm ki m tu n t ho c ng tìm ki m nh phân b i l m u tin m t kh i ã c s p th t Thêm m u tin: Gi s t p tin c l u kh i B1, B2, , Bm xen m t un tin r v i khóa x vào t p tin, ta ph i dùng th t c tìm ki m xác nh m t kh i Bi ó có th ch a m u tin r N u Bi ch tr ng xen r vào úng v trí c a Bi Ta ph i ch nh l i p tin ch m c n u m u tin m i tr thành m u tin u tiên kh i Bi N u Bi khơng cịn ch tr ng xen ta ph i xét kh i Bi+1 có th chuy n m u tin cu i kh i Bi thành m u tin u tiên c a kh i Bi+1 xen m u tin r vào úng v trí c a kh i Bi u ch nh l i t p tin ch c cho phù h p v i tr ng thái m i c a Bi+1 Q trình có th d n n vi c ta ph i xét kh i Bm, u Bm ã h t ch yêu c u h th ng c p thêm m t kh i m i Bm+1, chuy n m u tin cu i c a Bm sang Bm+1, m u tin cu i c a Bm-1 sang Bm….xen m u tin r vào kh i Bi c p nh t l i t p tin ch m c n ây s th y r ng cách phân ph i m u tin vào kh i c a t p tin Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 77 Collected by The_Wall (11/10/2005) chính, n u tr l i m t s ch tr ng có hao t n b nh ngồi nh ng l i r t thu n ti n cho vi c xen thêm m u tin Ví d 4-7: Ch ng h n ta c n xen m u tin r v i khóa x=24 vào t p tin c bi u di n hình 4-3 Th t c tìm x t p tin ch m c xác nh c kh i c n xen r kh i Vì kh i có m u tin nên ph i chuy n m u tin có khóa 27 sang kh i xen r vào kh i Vì kh i c ng ã m u tin nên xét kh i í chuy n m u tin có khóa 38 thành m u tin u tiên c a kh i Vì m u tin u tiên c a kh i bây gi có khóa 27 nên ta ph i s a l i giá tr c p c a t p tin ch m c ng ng v i kh i Ta c ng ph i làm t ng t i v i kh i C u trúc c a t p tin sau thêm m u tin r có khóa 24 nh sau: Xoá m u tin: xoá m u tin r có khố x, tr c h t ta c n tìm r, n u khơng tìm th y thơng báo l i, ng c l i ta xố m u tin r kh i ch a nó, n u m u tin b xoá m u tin u tiên c a kh i ph i c p nh t l i giá tr khoá t p tin ch m c Trong tr ng h p kh i tr nên r ng sau xoá u tin gi i phóng kh i ó xoá c p (khoá, tr ) c a kh i t p tin ch m c Vi c xoá t p tin ch m c c ng có th d n n vi c gi i phóng kh i t p tin ánh giá: Ta th y vi c tìm m t m u tin ch òi h i ph i c ch m t s nh kh i (m t kh i t p tin m t s kh i t p tin ch m c) Tuy nhiên vi c xen thêm m u tin, nh ã nói, có th ph i c ghi t t c kh i t p tin ây nh c m c a p tin ch m c IV.4.5- C u trúc B-cây Cây tìm ki m m-phân Cây tìm ki m m-phân (m-ary tree) s t ng qt hố c a tìm ki m nh phân ó m i nút có th có m nút Gi s n1 n2 hai c a m t nút ó, n1 bên trái n2 t t c a n1 có giá tr nh h n giá tr c a nút c a n2 Chúng ta s s d ng m-phân l u tr m u tin t p tin b nh M i t nút bi u di n cho m t kh i v t lý b nh Trong ó nút l u tr m u tin c a p tin Các nút l u tr m tr , tr t i m nút con, c ng l u tr m-1 khoá phân chia giá tr nút cháu N u ta dùng tìm ki m nh phân n nút l u tr m t t p tin c n trung bình logn phép truy xu t kh i tìm ki m m t m u tin N u ta dùng tìm ki m m-phân l u tr ỵ m t t p tin ch c n logmn phép truy xu t kh i tìm ki m m t m u tin Sau ây s nghiên c u m t tr ng h p c bi t c a tìm ki m m-phân B-cây B-cây (B-tree) B-cây b c m tìm ki m m-phân cân b ng có tính ch t sau: Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 78 Collected by The_Wall (11/10/2005) · Nút g c ho c ho c có nh t hai nút con, · M i nút, tr nút g c nút lá, có t [m/2] · Các ng i t g c t i có ch c: Ta có th s d ng B-cây b c m n m nút dài l u tr t p tin nh sau: M i nút m t kh i a, m u tin c a t p tin c s p th t theo khoá c l u tr nút B-cây Gi s m i nút l u tr c nhi u nh t b m u tin M i nút không ph i nút có d ng (p0, k1, p1, k2, p2, , kn, pn), v i pi (0 tr , tr t i nút th i c a nút ó ki giá tr khóa Các khố m t nút c k1 < k2 < < kn i n) làì c s p th t , T t c khoá c tr b i p0 u nh h n k1 T t c khoá n m c tr b i pi (1 i n) u l n h n ho c b ng ki nh h n ki+1 T t c khoá n m c tr b i pn u l n h n ho c b ng kn Ví d 4-8: Cho t p tin bao g m 20 m u tin v i giá tr khóa s nguyên thành B-cây c v i nút ch a c nhi u nh t m u tin c t ch c Tìm ki m: tìm ki m m t m u tin r có khố x s l n t nút g c n nút ch a r (n u r t n t i t p tin) T i m i b c ta a nút (p0, k1, p1, , kn, pn) vào b nh xác nh m i quan h gi a x v i giá tr khóa ki · N u ki x < ki+1 (1 i < n) s xét ti p nút c tr b i pi, · N u x < k1 ta s xét ti p nút c tr b i p0 ·N ux c tr b i pn kn ta s xét ti p nút Quá trình s d n n vi c xét m t nút Trong nút ta s tìm m u tin r v i khóa x ng tìm ki m tu n t ho c tìm ki m nh phân Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 79 Collected by The_Wall (11/10/2005) Thêm m u tin: thêm m t m u tin r có khố x vào B-cây, ta áp d ng th t c tìm ki m nói xác nh nút L mà m u tin ph i n m ó N u kh i L cịn ch cho r ta thêm r vào cho úng th t c a kh i L gi i thu t k t thúc N u L khơng cịn ch cho r ta yêu c u h th ng c p phát m t kh i m i L' D i [b/2] (b s m u tin nhi u nh t có th l u m t kh i) m u tin n m phân n a cu i kh i L sang L' r i xen r vào L ho c L' cho vi c xen m b o th t khoá kh i Gi s nút P cha c a L (P ph i c bi t th t c tìm i t g c n L ph i thông qua P) Bây gi ta áp d ng th t c xen quy xen vào P m t khóa k’ tr p' ng ng c a nút L’ (k' khoá c a m u tin u tiên L') Trong tr ng h p tr c xen k' p’ , P ã có m ta ph i c p thêm m t kh i m i P’ chuy n m t s c a P sang P’ xen m i vào P ho c P’ cho c P P’ u có nh t [m/2] Vi c chia c t P ịi h i phaií xen m t khóa m t tr vào nút cha c a P Q trình có th s d n t i nút g c c ng có th ph i chia c t nút g c, tr ng h p ph i t o m t nút g c m i mà hai c a hai a c a nút g c c Khi ó chi u cao c a B-cây s t ng lên Ví d 4-9: Thêm m u tin r có khố 19 vào t p tin c bi u di n b i B-cây ví d 4-8 · Q trình tìm ki m s xu t phát t G C i qua P2 d n t i nút L4 · Trong nút L4 K t qu vi c xen ta ch xen r vào úng v trí gi i thu t k t thúc c B-cây hình 4-6: Ví d 4-10: Thêm m u tin r có khoá 23 vào t p tin bi u di n b i B-cây ví d 4-8 (hình 4-5) · Quá trình tìm ki m i t nút G C, qua P2 t i nút L5 · Vì L5 ã m u tin nên ph i t o m t nút m i L’5 chuy n m u tin có khóa 24, 26 sang L’5 sau ó xen r vào L5 · Giá tr khóa c a m u tin u tiên L’5 24, ta ph i xen 24 tr c a L’5 vào P2, nh ng P2 ã có v y c n t o m t nút m i P’2, chuy n c p khóa, tr t ng ng i 34 38 sang P’2 xen c p tr , khóa 24 vào P2 Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 80 Collected by The_Wall (11/10/2005) · Do có m t nút m i P’2 nên ph i xen vào cha c a P2 ( ây nút G C) m t c p khóa, tr tr t i P’2 Con tr p0 c a nút P’2 tr t i nút L6, giá tr khóa u tiên c a L6 28 Giá tr ph i c xen vào nút G C v i tr c a P’2 Xóa m t m u tin: xóa m u tin r có khóa x, tr c h t ta tìm n nút L ch a m u tin r, xóa r kh i L N u r m u tin u tiên c a L, ta ph i quay lui lên nút P cha c a L t l i giá tr khóa c a L P, giá tr m i b ng giá tr khóa c a m u tin m i u tiên c a L Trong tr ng p L u tiên c a P, khóa c a L không n m P mà n m t tiên c a P, ph i quay lui lên mà s a i N u sau xóa m u tin r mà L tr nên r ng gi i phóng L n u s c a P bây gi nh n [m/2] ki m tra nút P’ bên trái ho c bên ph i m c v i P N u P’ có nh t [m/2] + con, chuy n m t P’ sang P Lúc c P P’ có nh t [m/2] Sau ó ta ph i c p nh t l i giá tr khóa c a P P’ cha c a chúng, n u c n ph i s a c t tiên c a chúng N u P’ có úng [m/2] con, ta n i P P’ thành m t nút có m Sau ó ta ph i xóa khóa tr c a P’ nút cha c a P’ Vi c xóa có th ph i quay lui lên t tiên c a P’ K t qu c a q trình xóa quay lui có th d n t i vi c n i hai c a nút g c, t o nên m t g c m i gi i phóng nút g c c , cao c a gi m i Ví d 4-11: Xóa m u tin r có khóa 38 t p tin bi u di n b i B-cây k t qu c a ví d 4-10 (hình 4-6) · Q trình tìm ki m, xu t phát t nút G C, i qua P’2 l n n nút L8, · Xóa m u tin r kh i L8 · M u tin u tiên c a L8 bây gi có khóa 40, · S a l i giá tr khóa c a L8 P’2 (thay 38 b i 40) ta Giáo trình mơn Phân tích Gi i Thu t – I c k t qu B-cây sau: C C N TH Trang 81 Collected by The_Wall (11/10/2005) Ví d 12: Xóa m u tin r có khóa 10 t p tin bi u di n b i B-cây k t qu c a ví d 10 · Quá trình tìm ki m, xu t phát t nút G C, i qua P1 l n n nút L2 · Xóa m u tin r kh i L2 · L2 bây gi tr nên r ng, gi i phóng L2 · Xóa giá tr khóa 10 tr c a L2 P1, P1 bây gi ch có (2 < [5/2]) · Xét nút P2, bên ph i c p v i P1, P2 có úng [5/2] = nên ta n i P1 P2 P1 có úng con, · Xóa khóa tr c a P2 nút G C, ta Giáo trình mơn Phân tích Gi i Thu t – I c B-cây k t qu nh sau: C C N TH Trang 82 Collected by The_Wall (11/10/2005) Giáo trình mơn Phân tích Gi i Thu t – I C C N TH Trang 83 ... ng trình mà g i ã c ánh giá Cu i ta tính th i gian cho ch ng trình Gi s ta m t h th ng ch ng trình g i theo s sau: Ch ng trình A g i hai ch ng trình B C, ch ng trình B g i hai ch B1 B2, ch ng trình. .. CH NG TRÌNH QUY I.5.1- Thành l p ph ng trình quy I.5.2- Gi i ph ng trình quy V i ch ng trình có g i ch ng trình quy, ta khơng th áp d ng cách tính nh a trình bày m c I.4.4 b i m t ch ng trình. .. ch ng trình quy, tr c h t ta c n thành l p ph ng trình quy, sau ó gi i ng trình quy, nghi m c a ph ng trình quy s th i gian th c hi n c a ch ng trình I.5.1- Thành l p ph ng trình quy Ph ng trình

Ngày đăng: 06/09/2012, 14:51

Hình ảnh liên quan

Ch ngh ns px p danh sách L gm 8 ph nt 7, 4, 8, 9, 3, 1, 6 ,2 ta có mô hình minh ha a MergeSort nh  sau: - Giáo trình MS SQL Server 7.0

h.

ngh ns px p danh sách L gm 8 ph nt 7, 4, 8, 9, 3, 1, 6 ,2 ta có mô hình minh ha a MergeSort nh sau: Xem tại trang 7 của tài liệu.
Hình 2-2: Sp xp xen - Giáo trình MS SQL Server 7.0

Hình 2.

2: Sp xp xen Xem tại trang 19 của tài liệu.
Hình 2-3: S px pn t - Giáo trình MS SQL Server 7.0

Hình 2.

3: S px pn t Xem tại trang 20 của tài liệu.
i nút 2 cho nút 5. Xét li nút 5 thì nó vn úng v trí nên t ac cây mi trong hình 2-9. - Giáo trình MS SQL Server 7.0

i.

nút 2 cho nút 5. Xét li nút 5 thì nó vn úng v trí nên t ac cây mi trong hình 2-9 Xem tại trang 28 của tài liệu.
A: array[1..n] of RecordType; - Giáo trình MS SQL Server 7.0

array.

[1..n] of RecordType; Xem tại trang 32 của tài liệu.
Hình 2-13 minh ha vi c ni hai danh sách. - Giáo trình MS SQL Server 7.0

Hình 2.

13 minh ha vi c ni hai danh sách Xem tại trang 32 của tài liệu.
Hình 2-13: Sp xp theo hai k - Giáo trình MS SQL Server 7.0

Hình 2.

13: Sp xp theo hai k Xem tại trang 34 của tài liệu.
Ví d 3-3: Bi u th c5 + 2* 3-4 sc bi u d in bi cây trong hình 3-8: - Giáo trình MS SQL Server 7.0

d.

3-3: Bi u th c5 + 2* 3-4 sc bi u d in bi cây trong hình 3-8: Xem tại trang 46 của tài liệu.
d hình dung t as xét hai bài toán quen th uc là bài toán TSP và bài toán cái ba lô. - Giáo trình MS SQL Server 7.0

d.

hình dung t as xét hai bài toán quen th uc là bài toán TSP và bài toán cái ba lô Xem tại trang 52 của tài liệu.
· Nút gc là nút bi u d in cho cu hình bao gm t tc các ph ng án. - Giáo trình MS SQL Server 7.0

t.

gc là nút bi u d in cho cu hình bao gm t tc các ph ng án Xem tại trang 53 của tài liệu.
Ví d 3-8: V is li u cho trong ví d 3-7 nói trên, ta tính cn di ca nút g cA (hình 3-13) nh  sau: - Giáo trình MS SQL Server 7.0

d.

3-8: V is li u cho trong ví d 3-7 nói trên, ta tính cn di ca nút g cA (hình 3-13) nh sau: Xem tại trang 54 của tài liệu.
Ví d 3-12: Cho th G bao gm 5 nh a, b, c, d,e và dài cá cc nh c cho trong hình 3- 3-17. - Giáo trình MS SQL Server 7.0

d.

3-12: Cho th G bao gm 5 nh a, b, c, d,e và dài cá cc nh c cho trong hình 3- 3-17 Xem tại trang 60 của tài liệu.
Li thê mc nh ab =3, bc nh bc =4 t ac cây có giá là16 (Hình 3-18c).             Thêm c nh be = 3, b  c nh ae = 7 ta c cây có giá là 12 - Giáo trình MS SQL Server 7.0

i.

thê mc nh ab =3, bc nh bc =4 t ac cây có giá là16 (Hình 3-18c). Thêm c nh be = 3, b c nh ae = 7 ta c cây có giá là 12 Xem tại trang 61 của tài liệu.
Ph ng án ban u là chu trình (ab c de a) có giá (t ng dà i) là 25. (Hình 3-20a). - Giáo trình MS SQL Server 7.0

h.

ng án ban u là chu trình (ab c de a) có giá (t ng dà i) là 25. (Hình 3-20a) Xem tại trang 62 của tài liệu.
N gi ta có th mô hình hóa bn th gi ib ng mt th không có h ng, trong óm inh bi u - Giáo trình MS SQL Server 7.0

gi.

ta có th mô hình hóa bn th gi ib ng mt th không có h ng, trong óm inh bi u Xem tại trang 64 của tài liệu.
Hình 4-1 mô th at ng c ab nh trong, bm và b nh ngoài trong thao tá cc và ghi p tin - Giáo trình MS SQL Server 7.0

Hình 4.

1 mô th at ng c ab nh trong, bm và b nh ngoài trong thao tá cc và ghi p tin Xem tại trang 68 của tài liệu.

Từ khóa liên quan

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

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

Tài liệu liên quan