Kiến trúc máy tính - Bài 6
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Kiến trúc máy tính - Bài 6 CấutrúcdữliệuVectorListStackQueueTreeHashTableDictionary 1 Bài6Véctơ(Vector) 2 Cấu trúc tuyến tínhCấutrúctuyếntínhlàmộtcấutrúctrongđócácphần Cấutrúctửnằmtrênmộtđường tuyếntínhkhôngcónhánh,vàcácphầntửliêntiếpnhau.Mộtsốvídụ: Cấutrúcphi tuyến Danhsách(lists) Vector,chuỗi(vectors sequences) Danhsáchkiểungănxếp, danhsáchkiểuhàngđợi (stack,queue) 3Vector 4 KiểudữliệutrừutượngVector (VectorADT) KiểudữliệutrừutượngVectorlàsựmởrộngcủakhái niệmmảng.Vectorlàmộtmảnglưutrữmộtdãycác đốitượngvớisốlượngtùyý. V 012 n Mộtphầntửcóthểđượctruycập,chènthêmhoặcloạibỏđikhibiếtchỉsốcủanó. Khithựchiệncácthaotáctrêncóthểxảyralỗinếuchỉsốcủaphầntửkhôngchínhxác(Vd,chỉsốâm) 5CácthaotáctrênVector CácthaotácchínhtrênVector: intgetAtRank(integerr,object&o):Trảlạiphầntửcóchỉsốr, nhưngkhôngloạibỏnó intreplaceAtRank(integerr,objecto,object&o1):Thaythếphần tửcóchỉsốrbằngphầntửovàtrảlạiphầntửbịthaythế intinsertAtRank(integerr,objecto):Chènphầntửovàovịtrír intremoveAtRank(integerr,object&o):loạibỏphầntửtạivịtrír, vàtrảlạiphầntửbịloạibỏ Thêmvàođólà2phéptoán: intsize()chobiếtkíchthướccủaVector và intisEmpty()chobiếtVectorcórỗnghaykhông? 6CàiđặtVectorbằngmảng SửdụngmảngVcókíchthướcN Mộtbiếnnlưutrữkíchthướccủavector(sốphầntử đượclưutrữ) PhéptoángetAtRank(r,o)đượcthựchiệntrongthời gianO(1)bằngviệctrảlạiV[r] V 012 n r 7Chènthêmphầntử PhéptoáninsertAtRank(r, o),Chúngtacầntạomộtômới cóchỉsốrbằngcáchđẩynrphầntửtừV[r], …, V[n − 1] về sau1vịtrí Trongtrườnghợpxấunhất(r = 0),phéptoánthựchiện trongthờigianO(n) V 012 n r V 012 n r V o 012 n r 8Loạibỏphầntử PhéptoánremoveAtRank(r,o),chúngtacầnđẩyn − r − 1phầntửtừV[r + 1], …, V[n − 1] về trước một vị trí Trongtrườnghợpxấunhất(r = 0),phéptoánthực hiệntrongthờigianO(n) V o 012 n r V 012 n r V 012 n r 9CácứngdụngcủaVector Ứngdụngtrựctiếp Lưutrữtậphợpcácđốitượng(cơsởdữliệu đơngiản) Ứngdụnggiántiếp Cấutrúcdữliệubổtrợchocácthuậttoán Thànhphầncủacáccấutrúcdữliệukhác 10Tómlại CàiđặtVectorbằngmảng: KhônggiansửchocấutrúcdữliệulàO(n) Các phép toán size,isEmpty,getAtRankvàreplaceAtRankchạy trongthờigianO(1) insertAtRankvàremoveAtRankchạytrongthờigianO(n) Nếuchúngtasửdụngmộtmảngquayvòngthìphép toán, insertAtRank(0)vàremoveAtRank(0)chạytrong thờigianlàO(1) VớiphéptoáninsertAtRank,khimảngđầysẽdẫnđến ngoạilệ,đểtránhtrườnghợpnàychúngtathaymạng hiệntạibằngmảnglớnhơn 11Pháttriểnmảng Khithựchiệnphéptoán.Nếumảngđầy sẽdẫnđếnxảyralỗi.Đểcóthểthêm phầntửđóvàotaphảimởrộngmảng. Làmthếnàođểmởrộngmảng? Chiếnlượcpháttriểntheohằngsố:Tăngthêm kíchthướcmảngtheomộthằngsốc Chiếnlượcgấpđôi:Tănggấpđôisốphầntửhiện cócủamảng 12ThêmphầntửvàocuốiAlgorithm push( o) if n = V.N − 1 then A ← Tạo mảng mới có kích thước … for i ← 0 to n-1 do A[i] ← V[i] V ←A o V[n] ← n ← n+ 1 13Sosánhhaichiếnlược Tasosánhchiếnl ...
Tìm kiếm theo từ khóa liên quan:
Kiến trúc máy tính cấu trúc dữ liệu lập trình máy tính quản trị dữ liệu hệ thống máy tínhTài liệu cùng danh mục:
-
Giáo trình Lý thuyết hệ điều hành: Phần 1 - Nguyễn Kim Tuấn
110 trang 434 0 0 -
Lecture Operating systems: Lesson 24 - Dr. Syed Mansoor Sarwar
29 trang 359 0 0 -
Bài giảng Xử lý sự cố phần mềm - Bài 4 Xử lý sự cố sử dụng Internet
14 trang 316 0 0 -
Lecture Operating systems: Lesson 21 - Dr. Syed Mansoor Sarwar
22 trang 309 0 0 -
3 trang 280 0 0
-
Làm việc với Read Only Domain Controllers
20 trang 268 0 0 -
80 trang 258 0 0
-
Lecture Operating systems: Lesson 13 - Dr. Syed Mansoor Sarwar
31 trang 255 0 0 -
Giáo trình Nguyên lý các hệ điều hành: Phần 2
88 trang 254 0 0 -
175 trang 252 0 0
Tài liệu mới:
-
Nghị quyết số 16/2019/NQ-HĐND tỉnh TiềnGiang
3 trang 0 0 0 -
Luận văn tốt nghiệp: Hoàn thiện công tác định mức kỹ thuật lao động tại Công ty may Thanh Hoá
54 trang 0 0 0 -
Phẫu thuật nội soi hàn khớp cổ chân tiếp cận qua lối trước trong điều trị thoái hóa khớp cổ chân
10 trang 0 0 0 -
Rối loạn ăn uống và các yếu tố liên quan ở sinh viên y khoa tại thành phố Hồ Chí Minh
9 trang 0 0 0 -
51 trang 0 0 0
-
Sáng kiến kinh nghiệm Mầm non: Một sô giải pháp rèn kĩ năng tự phục vụ cho trẻ 3 - 4 tuổi
13 trang 1 0 0 -
Trường phái quản tri hiện đại
27 trang 3 0 0 -
Bài giảng xây dựng mặt đường ôtô 5b P20
8 trang 3 0 0 -
TUYỂN TẬP ĐỀ THI THỬ ĐẠI HỌC NĂM HỌC 2012 - 2013 Môn thi: TOÁN; Khối: B - MÃ SỐ B6
1 trang 0 0 0 -
Một số yếu tố nguy cơ gây biếng ăn ở trẻ dưới 5 tuổi tại thành phố Huế
10 trang 0 0 0