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

Giáo trình cấu trúc dữ liệu và giải thuật.

144 569 0
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

Định dạng
Số trang 144
Dung lượng 1,07 MB

Nội dung

Lý thuyết cấu trúc dữ liệu và giải thuật đầy đủ.

HC VIN CÔNG NGH BU CHÍNH VIN THÔNG CU TRÚC D LIU GII THUT (Dùng cho sinh viên h đào to đi hc t xa) Lu hành ni b HÀ NI - 2007 LI NÓI U Cu trúc d liu gii thut là mt trong nhng môn hc c bn ca sinh viên ngành Công ngh thông tin. Các cu trúc d liu các gii thut đc xem nh là 2 yu t quan trng nht trong lp trình, đúng nh câu nói ni ting ca Niklaus Wirth: Chng trình = Cu trúc d liu + Gii thut (Programs = Data Structures + Algorithms). Nm vng các cu trúc d liu các gii thut là c s đ sinh viên tip cn vi vi c thit k xây dng phn mm cng nh s dng các công c lp trình hin đi. Cu trúc d liu có th đc xem nh là 1 phng pháp lu tr d liu trong máy tính nhm s dng mt cách có hiu qu các d liu này. đ s dng các d liu mt cách hiu qu thì cn phi có các thut toán áp dng trên các d liu đó. Do v y, cu trúc d liu gii thut là 2 yu t không th tách ri có nhng liên quan cht ch vi nhau. Vic la chn mt cu trúc d liu có th s nh hng ln ti vic la chn áp dng gii thut nào. Tài liu “Cu trúc d liu gii thut” bao gm 7 chng, trình bày v các cu trúc d liu các gii thut c bn nh t trong tin hc. Chng 1 trình bày v phân tích thit k thut toán. u tiên là cách phân tích 1 vn đ, t thc tin cho ti chng trình, cách thit k mt gii pháp cho vn đ theo cách gii quyt bng máy tính. Tip theo, các phng pháp phân tích, đánh giá đ phc tp thi gian thc hin gii thut cng đc xem xét trong chng. Chng 2 trình bày v đ qui, mt khái nim rt c bn trong toán hc khoa hc máy tính. Vi c s dng đ qui có th xây dng đc nhng chng trình gii quyt đc các vn đ rt phc tp ch bng mt s ít câu lnh, đc bit là các vn đ mang bn cht đ qui. Chng 3, 4, 5, 6 trình bày v các cu trúc d liu đc s dng rt thông dng nh mng danh sách liên kt, ngn xp hàng đi, cây, đ th. ó là các c u trúc d liu cng rt gn gi vi các cu trúc trong thc tin. Chng 7 trình bày v các thut toán sp xp tìm kim. Các thut toán này cùng vi các k thut đc s dng trong đó đc coi là các k thut c s cho lp trình máy tính. Các thut toán đc xem xét bao gm các lp thut toán đn gin c các thut toán cài đt phc tp nhng có thi gian thc hin ti u. Cui mi phn đu có các câu hi bài tp đ sinh viên ôn luyn t kim tra kin thc ca mình. Cui tài liu có các ph lc hng dn tr li câu hi, mã ngun tham kho tài liu tham kho. V nguyên tc, các cu trúc d liu các gii thut có th đc biu din cài đt bng bt c ngôn ng lp trình hin đi nào. Tuy nhiên, đ có đc các phân tích sâu sc h n có kt qu thc t hn, tác gi đã s dng ngôn ng lp trình C đ minh ho cho các cu trúc d liu thut toán. Do vy, ngoài các kin thc c bn v tin hc, ngi đc cn có kin thc v ngôn ng lp trình C. Cui cùng, mc đã ht sc c gng nhng chc chn không tránh khi các thiu sót. Tác gi rt mong nhn đc s góp ý ca bn đc đng nghip đ tài liu đc hoàn thin hn. Hà Ni, tháng 10/2007 3 CHNG 1 PHÂN TÍCH THIT K GII THUT Chng 1 trình bày các khái nim v gii thut phng pháp tinh chnh tng bc chng trình đc th hin qua ngôn ng din đt gii thut. Chng này cng nêu phng pháp phân tích đánh giá mt thut toán, các khái nim liên quan đn vic tính toán thi gian thc hin chng trình. Trong mi phn đu có các minh ho c th. Phn đu đa ra ví d v bài toán nút giao thông phng pháp gii quyt bài toán t phân tích v n đ cho đn thit k gii thut, tinh chnh tng bc cho ti mc c th hn. Phn 2 đa ra mt ví d v phân tích tính toán thi gian thc hin gii thut sp xp ni bt.  hc tt chng này, sinh viên cn nm vng phn lý thuyt tìm các ví d tng t đ thc hành phân tích, thit k, đánh giá gii thut. 1.1 GII THUT NGÔN NG DIN T GII THUT 1.1.1 Gii thut Trong thc t, khi gp phi mt vn đ cn phi gii quyt, ta cn phi đa ra 1 phng pháp đ gii quyt vn đ đó. Khi mun gii quyt vn đ bng cách s dng máy tính, ta cn phi đa ra 1 gii pháp phù hp vi vic thc thi bng các ch ng trình máy tính. Thut ng “thut toán” đc dùng đ ch các gii pháp nh vy. Thut toán có th đc đnh ngha nh sau: Thut toán là mt chui hu hn các lnh. Mi lnh có mt ng ngha rõ ràng có th đc thc hin vi mt lng hu hn tài nguyên trong mt khong hu hn thi gian. Chng hn lnh x = y + z là mt lnh có các tính cht trên. Trong mt thu t toán, mt lnh có th lp đi lp li nhiu ln, tuy nhiên đi vi bt k b d liu đu vào nào, thut toán phi kt thúc sau khi thc thi mt s hu hn lnh. Nh đã nói  trên, mi lnh trong thut toán phi có ng ngha rõ ràng có th đc thc thi trong mt khong thi gian hu hn. Tuy nhiên, đôi khi mt lnh có ng ngha rõ ràng đi vi ngi này nhng li không rõ ràng đi vi ngi khác. Ngoài ra, thng rt khó đ chng minh mt lnh có th đc thc hin trong 1 khong hu hn thi gian. Thm chí, k c khi bit rõ ng ngha ca các lnh, cng khó đ có th chng minh là vi bt k b d liu đu vào nào, thut toán s dng. Tip theo, chúng ta s xem xét mt ví d v  xây dng thut toán cho bài toán đèn giao thông: Gi s ngi ta cn thit k mt h thng đèn cho mt nút giao thông có nhiu đng giao nhau phc tp.  xây dng tp các trng thái ca các đèn giao thông, ta cn phi xây dng mt chng trình có đu vào là tp các ngã r đc phép ti nút giao thông (li đi thng cng đc xem nh là 1 ngã r) chia tp này thành 1 s ít nht các nhóm, sao cho tt c các ngã r trong nhóm có th đc đi cùng lúc mà không xy ra tranh chp. Sau đó, chúng ta s gn trng thái ca các đèn giao thông vi mi nhóm va đc phân chia. Vi cách phân chia có s nhóm ít nht, ta s xây dng đc 1 h thng đèn giao thông có ít trng thái nht. 4 Chng hn, ta xem xét bài toán trên vi nút giao thông đc cho nh trong hình 1.1  di. Trong nút giao thông trên, C E là các đng 1 chiu, các đng còn li là 2 chiu. Có tt c 13 ngã r ti nút giao thông này. Mt s ngã r có th đc đi đng thi, chng hn các ngã r AB (t A r sang B) EC. Mt s ngã r thì không đc đi đng thi (gây ra các tuyn giao thông xung đt nhau), chng hn AD EB. H thng đèn ti nút giao thông phi hot đ ng sao cho các ngã r xung đt (chng hn AD EB) không đc cho phép đi ti cùng mt thi đim, trong khi các ngã r không xung đt thì có th đc đi ti cng 1 thi đim. Hình 1.1 Nút giao thông Chúng ta có th mô hình hóa vn đ này bng mt cu trúc toán hc gi là đ th (s đc trình bày chi tit  chng 5).  th là mt cu trúc bao gm 1 t p các đim gi là đnh mt tp các đng ni các đim, gi là các cnh. Vn đ nút giao thông có th đc mô hình hóa bng mt đ th, trong đó các ngã r là các đnh, có mt cnh ni 2 đnh biu th rng 2 ngã r đó không th đi đng thi. Khi đó, đ th ca nút giao thông  hình 1.1 có th đc biu din nh  hình 1.2. Hình 1.2  th ngã r A B C D E ACAB AD BCBA BD DBDA DC EBEA EC ED 5 Ngoài cách biu din trên, đ th còn có th đc biu din thông qua 1 bng, trong đó phn t  hàng i, ct j có giá tr 1 khi ch khi có 1 cnh ni đnh i đnh j. AB AC AD BA BC BD DA DB DC EA EB EC ED AB 1 1 1 1 AC 1 1 1 1 1 AD 1 1 1 BA BC 1 1 1 BD 1 1 1 1 1 DA 1 1 1 1 1 DB 1 1 1 DC EA 1 1 1 EB 1 1 1 1 1 EC 1 1 1 1 ED Bng 1.1 Biu din đ th ngã r bng bng Ta có th s dng đ th trên đ gii quyt vn đ thit k h thng đèn cho nút giao thông nh đã nói. Vic tô màu mt đ th là vic gán cho mi đnh ca đ th mt màu sao cho không có hai đnh đc ni bi 1 cnh nào đó li có cùng mt màu. D thy rng v n đ nút giao thông có th đc chuyn thành bài toán tô màu đ th các ngã r  trên sao cho phi s dng s màu ít nht. Bài toàn tô màu đ th là bài toán đã xut hin đc nghiên cu t rt lâu. Tuy nhiên, đ tô màu mt đ th bt k vi s màu ít nht là bài toán rt phc tp.  gii bài toán này, ngi ta thng s dng phng pháp “vét cn” đ th tt c các kh nng có th . Có ngha, đu tiên th tin hành tô màu đ th bng 1 màu, tip theo dùng 2 màu, 3 màu, v.v. cho ti khi tìm ra phng pháp tô màu tho mãn yêu cu. Phng pháp vét cn có v thích hp vi các đ th nh, tuy nhiên đi vi các đ th phc tp thì s tiêu tn rt nhiu thi gian thc hin cng nh tài nguyên h thng. Ta có th tip cn vn đ theo hng c gng tìm ra mt gii pháp đ tt, không nht thit phi là gii pháp ti u. Chng hn, ta s c gng tìm mt gii pháp tô màu cho đ th ngã r  trên vi mt s màu khá ít, gn vi s màu ít nht, thi gian thc hin vic tìm gii pháp là khá nhanh. Gii thut tìm các gii pháp đ tt nhng cha phi ti u nh vy gi là các gii thut tìm theo “cm tính”. i vi bài toán tô màu đ th, mt thut toán cm tính thng đc s dng là thut toán “tham n” (greedy). Theo thut toán này, đu tiên ta s dng mt màu đ tô nhiu nht s đnh có th, tho mãn yêu cu bài toán. Tip theo, s dng màu th 2 đ tô các đnh cha đc tô trong bc 1, ri s dng đn màu th 3 đ tô các đnh cha đc tô trong bc 2, v.v. 6  tô màu các đnh vi màu mi, chúng ta thc hin các bc: - La chn 1 đnh cha đc tô màu tô nó bng màu mi. - Duyt qua các đnh cha đc tô màu. Vi mi đnh dng này, kim tra xem có cnh nào ni nó vi mt đnh va đc tô bi màu mi hay không. Nu không có cnh nào thì ta tô màu đnh này bng màu mi. Thut toán này đc gi là “tham n” vì ti mi bc nó tô màu t t c các đnh có th mà không cn phi xem xét xem vic tô màu đó có đ li nhng đim bt li cho các bc sau hay không. Trong nhiu trng hp, chúng ta có th tô màu đc nhiu đnh hn bng 1 màu nu chúng ta bt “tham n” b qua mt s đnh có th tô màu đc trong bc trc. Ví d, xem xét đ th  hình 1.3, trong đó đnh 1 đã đc tô màu đ. Ta thy rng hoàn toàn có th tô c 2 đnh 3 4 là màu đ, vi điu kin ta không tô đnh s 2 màu đ. Tuy nhiên, nu ta áp dng thut toán tham n theo th t các đnh ln dn thì đnh 1 đnh 2 s là màu đ, khi đó đnh 3, 4 s không đc tô màu đ. Hình 1.3  th Bây gi ta s xem xét thut toán tham n đc áp dng trên đ th các ngã r  hình 1.2 nh th nào. Gi s ta bt đu t đnh AB tô cho đnh này màu xanh. Khi đó, ta có th tô cho đnh AC màu xanh vì không có cnh ni đnh này vi AB. AD cng có th tô màu xanh vì không có cnh ni AD vi AB, AC. nh BA không có cnh ni ti AB, AC, AD nên cng có th đc tô màu xanh. Tuy nhiên, đnh BC không tô đc màu xanh vì tn ti cnh ni BC AB. Tng t nh vy, BD, DA, DB không th tô màu xanh vì tn ti cnh ni chúng ti mt trong các đnh đã tô màu xanh. Cnh DC thì có th tô màu xanh. Cui cùng, cnh EA, EB, EC cng không th tô màu xanh trong khi ED có th đc tô màu xanh. 1 5 3 4 2 a)  th ban đu 1 5 3 4 2 b) Tô màu theo thut toán tham n 1 5 3 4 2 c) Mt cách tô màu tt hn 7 Hình 1.4 Tô màu xanh cho các đnh ca đ th ngã r Tip theo, ta s dng màu đ đ tô các đnh cha đc tô màu  bc trc. u tiên là BC. BD cng có th tô màu đ, tuy nhiên do tn ti cnh ni DA vi BD nên DA không đc tô màu đ. Tng t nh vy, DB không tô đc màu đ còn EA có th tô màu đ. Các đnh cha đc tô màu còn li đ u có cnh ni ti các đnh đã tô màu đ nên cng không đc tô màu. Hình 1.5 Tô màu đ trong bc 2 Bc 3, các đnh cha đc tô màu còn li là DA, DB, EB, EC. Nu ta tô màu đnh DA là màu lc thì DB cng có th tô màu lc. Khi đó, EB, EC không th tô màu lc ta chn 1 màu th t là màu vàng cho 2 đnh này. ACAB AD BCBA BD DBDA DC EBEA EC ED ACAB AD BCBA BD DBDA DC EBEA EC ED 8 Hình 1.6 Tô màu lc màu vàng cho các đnh còn li Nh vy, ta có th dùng 4 màu xanh, đ, lc, vàng đ tô màu cho đ th ngã r  hình 1.2 theo yêu cu nh đã nói  trên. Bng tng hp màu đc mô t nh sau: Màu Ngã r Xanh AB, AC, AD, BA, DC, ED  BC, BD, EA Lc DA, DB Vàng EB, EC Bng 1.2 Bng tng hp màu Thut toán tham n không đm bo cho ra kt qu ti u là s màu ít nht đc dùng. Tuy nhiên, ngi ta có th dùng mt s tính cht ca đ th đ đánh giá kt qu thu đc. Tr li vi vn đ nút giao thông, t kt qu tô màu trên, ta có th thit k h thng đèn giao thông theo bng tng hp màu trên, trong đó m i trng thái ca h thng đèn tng ng vi 1 màu. Ti mi trng thái, các ngã r nm ti hàng tng ng vi màu đó đc cho phép đi, các ngã r còn li b cm. 1.1.2 Ngôn ng din đt gii thut k thut tinh chnh tng bc Sau khi đã xây dng đc mô hình toán hc cho vn đ cn gii quyt, tip theo, ta có th hình thành mt thu t toán cho mô hình đó. Phiên bn đu tiên ca thut toán thng đc din t di dng các phát biu tng đi tng quát, sau đó s đc tinh chnh dn tng bc thành chui các lnh c th, rõ ràng hn. Ví d trong thut toán tham n  trên, ta mô t bc thc hin  mc tng quát là “La chn 1 đnh cha đc tô màu”. Vi phát biu nh vy, ta hy vng rng ngi đc có th nm đc ý tng thc hin thao tác. Tuy nhiên, đ chuyn các phát biu đó ACAB AD BCBA BD DBDA DC EBEA EC ED 9 thành chng trình máy tính, cn phi qua 1 s bc tinh chnh cho ti khi đt đn mc các phát biu đu có th đc chuyn đi trc tip sang các lnh ca ngôn ng lp trình. Tr li ví d v bài toán tô màu đ th bng thut toán tham n. Ta s xem xét vic mô t thut toán t mc tng quát cho ti mt s mc c th hn. Ti bc nào đó, gi s ta có đ th G có 1 s đnh đã đc tô màu theo quy tc đã nói  trên. Th tc Tham_an di đây s xác đnh 1 tp các đnh cha đc tô màu thuc G mà có th cùng đc tô bi 1 màu mi. Th tc này s đc gi đi gi li nhiu ln cho ti khi tt c các đnh ca G đã đc tô màu.  mc tng quát, th t c đc mô t nh sau: void Tham_an(GRAPH: G, SET: Mau_moi) { Mau_moi = Tp rng; For mi đnh v cha đc tô màu thuc G If v không đc ni ti đnh nào trong tp Mau_moi { Tô màu mi cho đnh v; a v vào tp Mau_moi; } } Trong th tc trên, ta s dng mt ngôn ng din đt gii thut ta nh ngôn ng lp trình C. Trong ngôn ng này, các lnh đc mô t di dng ngôn ng t nhiên nhng vn tuân theo cú pháp ca ngôn ng lp trình. Ta nhn thy rng các phát biu trong th tc trên còn rt tng quát, cha tng ng vi các lnh trong ngôn ng lp trình, chng hn các điu kin ki m tra trong câu lnh For If  mc mô t hin ti là không thc hin đc trong C.  th tc có th thc thi đc, ta cn phi tinh chnh mt s bc đ có th chuyn đi v chng trình trong ngôn ng lp trình C thông thng. u tiên, ta xem xét lnh If  trên.  kim tra xem đnh v có ni ti mt đnh nào đó trong tp Mau_moi hay không, ta xem xét tng đnh w trong Mau_moi s dng đ th G đ kim tra xem có tn ti cnh ni v à w không.  lu gi kt qu kim tra, ta s dng mt bin ton_tai. Khi đó, th tc đc tinh chnh nh sau: void Tham_an(GRAPH: G, SET: Mau_moi) { int ton_tai; Mau_moi = Tp rng; For mi đnh v cha đc tô màu thuc G { ton_tai = 0; For mi đnh w thuc Mau_moi If tn ti cnh ni v w trong G ton_tai = 1; If ton_tai = = 1 { 10 Tô màu mi cho đnh v; a v vào tp Mau_moi; } } } Nh vy, ta có th thy rng điu kin kim tra trong phát biu If đã đc mô t c th hn bng các phát nh hn,và các phát biu này có th d dàng chuyn thành các lnh c th trong C. Tip theo, ta s tinh chnh các vòng lp For đ duyt qua các đnh thuc G thuc Mau_moi.  làm điu này, tt nht là ta thay For bng mt vòng lp While, bin v ban đu đc gán là phn t đu tiên cha tô màu trong tp G, ti mi bc lp, bin v s đc thay bng phn t cha tô màu tip theo trong G. Vòng lp F bên trong có th thc hin tng t. Void Tham_an(GRAPH: G, SET: Mau_moi) { int ton_tai; int v, w Mau_moi = Tp rng; v = đnh cha tô màu đu tiên trong G ; While v != NULL { ton_tai = 0; w = đnh đu tiên trong Mau_moi; While w != NULL{ If tn ti cnh ni v w trong G ton_tai = 1; w = đnh tip theo trong Mau_moi ; } If ton_tai = = 1 { Tô màu mi cho đnh v; a v vào tp Mau_moi; } v = đnh cha tô màu tip theo trong G; } } Nh vy, ta thy các phát biu trong th tc đã khá c th, tuy nhiên, đ chuyn đi thành chng trình trong ngôn ng C thì cn ti vài bc tinh chnh na. Bn đc hãy xem nh đó là bài tp t gii đ hiu rõ v ngôn ng din đt gii thut cng nh k thut tinh chnh tng bc. 1.2 PHÂN TÍCH THUT TOÁN Vi mi vn đ c n gii quyt, ta có th tìm ra nhiu thut toán khác nhau. Có nhng thut toán thit k đn gin, d hiu, d lp trình sa li, tuy nhiên thi gian thc hin ln tiêu tn . liu “Cu trúc d liu và gii thut” bao gm 7 chng, trình bày v các cu trúc d liu và các gii thut c bn nh t trong tin hc. Chng 1 trình bày. ca chng trình không ph thuc vào giá tr d liu đu vào mà ph thuc vào kích thc ca d liu đu vào. Do vy thi gian chy ca chng trình nên

Ngày đăng: 24/09/2013, 00:29

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Nút giao thông - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.1 Nút giao thông (Trang 4)
Hình 1.1 Nút giao thông - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.1 Nút giao thông (Trang 4)
Hình 1.2   th  ngã r  B A - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.2 th ngã r B A (Trang 4)
Hình 1.3   th - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.3 th (Trang 6)
Hình 1.4 Tô màu xanh cho cá cđ nh ca đ th ngã r - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.4 Tô màu xanh cho cá cđ nh ca đ th ngã r (Trang 7)
Hình 1.5 Tô màu đ trong b c2 - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.5 Tô màu đ trong b c2 (Trang 7)
Hình 1.4 Tô màu xanh cho các đ nh c a đ  th  ngã r - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.4 Tô màu xanh cho các đ nh c a đ th ngã r (Trang 7)
Hình 1.5 Tô màu đ  trong b c 2 - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.5 Tô màu đ trong b c 2 (Trang 7)
Hình 1.6 Tô màu lc và màu vàng cho cá cđ nh còn li - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.6 Tô màu lc và màu vàng cho cá cđ nh còn li (Trang 8)
Hình 1.6 Tô màu l c và màu vàng cho các đ nh còn l i - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 1.6 Tô màu l c và màu vàng cho các đ nh còn l i (Trang 8)
Hình 2.1 Các li gi đ qui đc th ch in khi gi th tc Fibonaci (6) - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.1 Các li gi đ qui đc th ch in khi gi th tc Fibonaci (6) (Trang 17)
Hình 2.1 Các l i g i  đ  qui  đ c th c hi n khi g i th  t c Fibonaci (6) - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.1 Các l i g i đ qui đ c th c hi n khi g i th t c Fibonaci (6) (Trang 17)
Hình 2.2 Bài toán tháp Hà n i - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.2 Bài toán tháp Hà n i (Trang 19)
Hình 2.3 Kt qu c hy chung trình tháp Hàn ivi 4 đa - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.3 Kt qu c hy chung trình tháp Hàn ivi 4 đa (Trang 22)
Hình 2.3 K t qu  ch y chu ng trình tháp Hà n i v i 4 đ a - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.3 K t qu ch y chu ng trình tháp Hà n i v i 4 đ a (Trang 22)
Theo lu tc thông th ng, quân mã tô (x,y) có th đi ti 8ô trên bà nc nh trong hình : - Giáo trình cấu trúc dữ liệu và giải thuật.
heo lu tc thông th ng, quân mã tô (x,y) có th đi ti 8ô trên bà nc nh trong hình : (Trang 25)
Hình 2.4 Các n c đi c a quân mã x - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.4 Các n c đi c a quân mã x (Trang 25)
Hình 2.5 Kt qu c hy ch ng trình mã đi t un - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.5 Kt qu c hy ch ng trình mã đi t un (Trang 28)
Hình 2.5 K t qu  ch y ch ng trình mã đi tu n - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.5 K t qu ch y ch ng trình mã đi tu n (Trang 28)
Hình 2.6 Các nc chi u ca quân hu - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.6 Các nc chi u ca quân hu (Trang 30)
Hình 2.6 Các n c chi u c a quân h u - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 2.6 Các n c chi u c a quân h u (Trang 30)
Hình 3.2 Danh sách liên k t vòng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 3.2 Danh sách liên k t vòng (Trang 44)
Hình 3.3 Danh sách liên kt kép - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 3.3 Danh sách liên kt kép (Trang 45)
3.2.3.2 Danh sách liên kt kép - Giáo trình cấu trúc dữ liệu và giải thuật.
3.2.3.2 Danh sách liên kt kép (Trang 45)
Hình 3.3 Danh sách liên k t kép - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 3.3 Danh sách liên k t kép (Trang 45)
Hình 4.1 Cài đt ng nx pb ng m ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 4.1 Cài đt ng nx pb ng m ng (Trang 49)
Hình 4.1 Cài đ t ng n x p b ng m ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 4.1 Cài đ t ng n x p b ng m ng (Trang 49)
Hình 4.2 Cài đt ng nx pb ng danh sách liên kt - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 4.2 Cài đt ng nx pb ng danh sách liên kt (Trang 50)
Hình 4.2 Cài  đ t ng n x p b ng danh sách liên k t - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 4.2 Cài đ t ng n x p b ng danh sách liên k t (Trang 50)
Hình 4.3 Cài  đ t hàng  đ i b ng m ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 4.3 Cài đ t hàng đ i b ng m ng (Trang 62)
Hình 4.4 Cài  đ t hàng  đ i b ng danh sách liên k t  Khai báo 1 hàng đ i b ng danh sách liên k t nh  sau: - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 4.4 Cài đ t hàng đ i b ng danh sách liên k t Khai báo 1 hàng đ i b ng danh sách liên k t nh sau: (Trang 64)
Hình 5.1 Cây - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.1 Cây (Trang 68)
Hình 5.1 Cây - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.1 Cây (Trang 68)
Hình 5.2 Bi u di n cây b ng m ng các nút cha - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.2 Bi u di n cây b ng m ng các nút cha (Trang 68)
Hình 5.3 Cài đt câ yb ng danh sách các nút con - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.3 Cài đt câ yb ng danh sách các nút con (Trang 69)
Hình 5.3 Cài đ t cây b ng danh sách các nút con - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.3 Cài đ t cây b ng danh sách các nút con (Trang 69)
Gis ta có mt câ yT v ig cn và k cây con là T1, T2, ..., Tk nh hình v. - Giáo trình cấu trúc dữ liệu và giải thuật.
is ta có mt câ yT v ig cn và k cây con là T1, T2, ..., Tk nh hình v (Trang 70)
Hình 5.4 Duy t cây th  t  tr c - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.4 Duy t cây th t tr c (Trang 70)
Hình 5.5 Cây nh phân - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.5 Cây nh phân (Trang 72)
Hình 5.7 Cây nh phân tìm k im - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.7 Cây nh phân tìm k im (Trang 73)
Hình 5.7 Cây nh  phân tìm ki m - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.7 Cây nh phân tìm ki m (Trang 73)
Ví d, cây nh phân hình bên di có th đc b iu di nb ng danh sách liên kt nh sau: - Giáo trình cấu trúc dữ liệu và giải thuật.
d cây nh phân hình bên di có th đc b iu di nb ng danh sách liên kt nh sau: (Trang 74)
Hình 5.9 Cài  đ t cây nh  phân b ng danh sách liên k t  Khai báo cây nh  phân b ng danh sách liên trên trong C nh  sau: - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 5.9 Cài đ t cây nh phân b ng danh sách liên k t Khai báo cây nh phân b ng danh sách liên trên trong C nh sau: (Trang 74)
Hình 6.1 th có h ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.1 th có h ng (Trang 77)
Hình 6.1   th  có h ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.1 th có h ng (Trang 77)
Hình 6.3 th có tr ng s - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.3 th có tr ng s (Trang 79)
Ví d, vi đ th có h ng (V, E) nh trong hình vd i, mat rn kca nó là: - Giáo trình cấu trúc dữ liệu và giải thuật.
d vi đ th có h ng (V, E) nh trong hình vd i, mat rn kca nó là: (Trang 79)
Hình 6.3   th  có tr ng s - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.3 th có tr ng s (Trang 79)
Hình 6.5 B iu di nđ th vô h ng b ng matr k - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.5 B iu di nđ th vô h ng b ng matr k (Trang 80)
Hình 6.6 Bi u di n  đ  th  có tr ng s  b ng ma tr n k - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.6 Bi u di n đ th có tr ng s b ng ma tr n k (Trang 80)
Ví d, vi đ th có h ng nh hình 6.1, các danh sách kca nó là: - Giáo trình cấu trúc dữ liệu và giải thuật.
d vi đ th có h ng nh hình 6.1, các danh sách kca nó là: (Trang 81)
Hình 6.7 Bi u di n  đ  th  b ng danh sách k - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.7 Bi u di n đ th b ng danh sách k (Trang 81)
Hình 6.9 Duy tđ th theo chi ur ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.9 Duy tđ th theo chi ur ng (Trang 83)
Hình 6.9 Duy t đ  th  theo chi u r ng - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 6.9 Duy t đ th theo chi u r ng (Trang 83)
Hình 7.1 Quicksort - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 7.1 Quicksort (Trang 95)
Hình 7.1 Quick sort - Giáo trình cấu trúc dữ liệu và giải thuật.
Hình 7.1 Quick sort (Trang 95)
Xét cây nh phân hình 7.2 tin hành chèn nút có khoá là 30 vào cây, ta tin hành các bc nh  sau:  - Giáo trình cấu trúc dữ liệu và giải thuật.
t cây nh phân hình 7.2 tin hành chèn nút có khoá là 30 vào cây, ta tin hành các bc nh sau: (Trang 115)
5) L nl ly các s đã lu trong ng nx ph in th ra màn hình, đó chính là d ng nh phân c a s  ban  đu - Giáo trình cấu trúc dữ liệu và giải thuật.
5 L nl ly các s đã lu trong ng nx ph in th ra màn hình, đó chính là d ng nh phân c a s ban đu (Trang 119)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w