... tail-recursion removal and then applying the general method of recursion removal 1.3 ANALYSIS OF ALGORITHMS For most problems, there are many different algorithms available How to select the best algorithms? ... 15 2.3 PROVING ITERATIVE ALGORITHMS 16 Chapter ANALYSIS OF SOME SORTING AND SEARCHING ALGORITHMS 20 3.1 ANALYSIS OF ELEMENTARY SORTING METHODS 20 3.1.1 Rules ... 310 } The invariant: r:= 3k-1 Bound function: 11 - k Trang 19 Chapter ANALYSIS OF SOME SORTING AND SEARCHING ALGORITHMS 3.1 ANALYSIS OF ELEMENTARY SORTING METHODS 3.1.1 Rules of the Game Let consider...
... 2j Trong giảithuật thứ tự dựa vào số, giả sử tồn hàm bits(x,k,j :integer):integer mà trả j bit xuất cách k bit kể từ mốc bên phải số x 27 Giảithuật thứ tự hoán vị số Phương pháp giảithuật thứ ... trí thứ Hơn nữa, sau phân đoạn bên trái rỗng vàphân đoạn bên phải gồm n – phần tử Do với lần phân hoạch kế, phần tử thứ hai đòi hỏi n-1 so sánh để nhận nên vị trí thứ hai Và tiếp tục Như tổng ... thứ tự hai nửa tập tin N chi phí việc xét phần tử phân hoạch lần đầu Từ chương 1, việc giải hệ thức truy hồi đưa đến lời giải: CN N lgN 18 Phântích độ phức tạp: trường hợp xấu Một trường hợp...
... ng h p phântích • Th ng không khó tìm c n c a th i gian tính toán c a m t gi i thu t • Nh ng phântích tr ng h p trung bình th ng òi h i m t s phântích toán h c c u k , ph c t p c phântích • ... gian ch y lu th a M t vài gi i thu t khác có th có th i gian ch y N3/2, N1/2 , (lgN)2 … 36 ph c t p tính toán Chúng ta t p trung vào phântích tr ng h p x u nh t Khi phân tích, b qua nh ng th ... “c n d i” c a th i gian tính toán phântích tr ng h p x u nh t Nh ng c n d i (lower-bound ) th ng khó xác nh 38 Phântích tr ng h p trung bình V i ki u phântích này, ta ph i - c tr ng hóa d...
... 10 Phântích độ phức tạp số giảithuật thứ tự tìm kiếm 8 20 Phântích độ phức tạp số giảithuật cấu trúc liệu 9 20 Phântích độ phức tạp số giảithuật đồ thị 5 20 Các chiến lược thiếtkếgiảithuật ... thức kỹ việc phântích độ phức tạp tính toán giảithuật Tìm hiểu chiến thuậtthiếtkếgiảithuật Nội dung môn học TT Nội dung Số tiết Các khái niệm phântích độ phức tạp giảithuậtPhân bổ thời ... cần thiết để thực giảithuật Phântíchgiảithuật (Analyzing of Algorithm) trình tìm đánh giá tài nguyên cần thiết để thực giảithuật Thời gian thực thuật toán 20 Độ phức tạp thời gian giải thuật: ...
... lỗi Phântíchgiảithuật II Các phương pháp thiếtkếgiảithuật I Phương pháp chia để trị Phương pháp tham ăn Phương pháp quy hoạch động I Phântíchgiảithuật Sự cần thiếtthiếtkếgiảithuật ... cần thiếtthiếtkếgiảithuật Trong giải toán có số giảithuật khác nhau, vấn đề cần phải đánh giá giảithuật để lựa chọn giảithuật tốt (nhất).Thông thường ta cân vào tiêu chuẩn sau: a) Giảithuật ... thuật đắn b) Giảithuật đơn giản c) Giảithuật thực nhanh a) Giảithuật đắn Để kiểm tra tính đắn giảithuật cài đặt giảithuật thực máy tính với số liệu mẫu lấy kết thu so sánh với kết biết ...
... Phần 1: KT phântíchthiếtkếgiảithuật PGS TS TRẦN CAO ĐỆ Đại Học Cần Thơ 2014 Chương 1: KỸ THUẬTPHÂNTÍCHGIẢITHUẬT PGS TS TRẦN CAO ĐỆ Đại Học Cần Thơ 2014 Thuật toán Giảithuật / Thuật toán ... chứng minh thuật toán Tiếp cận khoa học – Tính đắn thuật toán – So sánh thuật toán: phântích độ phức tạp thời gian Tiếp cận thực hành – – Thuật toán đắn, xác Thuật toán dừng Thuật toán ... Sedgewick, Algorithms in Java, Addision-Wesley, 2004 Chapter R Sedgewick, Algorithms , 1987 Chương 2: KỸ THUẬTTHIẾTKẾGIẢITHUẬT 24 TS TRẦN CAO ĐỆ Đại Học Cần Thơ 2012 Chia để trị Divide and conquer...
... : T = 314152 ts = 31415, s = 0, m= and T[s+m+1] = ts+1= 10(31415 –10000*3) +2 = 14152 Thus p and t0, t1, , tn-m can all be computed in O(n+m) time And all occurences of the pattern P[1 ... characters with ranks between i and j A prefix of P is a substring of the type P[0 i] A suffix of P is a substring of the type P[i m − 1] Given strings T (text) and P (pattern), the pattern matching ... Matching Analysis Boyer-Moore’s algorithm runs in time O(n+m + s) Example of worst case: a a a a a b T = aaa … a P = baaa a a a a a a 12 11 10 a a a The worst case may occur in images and DNA...
... gốc r kết Nếu R ∩ A ≠ ∅: tìm kiếm đệ qui v nút r Thời gian tìm kiếm O(D*n), với n số nút – Giảithuật tìm kiếm có thời gian > thời gian giảithuật tìm brute forte! – Trong thực hành TK tứ phân ... Sắp xếp điểm O(nlogn) Giảithuật quét thực vòng lặp while nhiều 2n, lần O(1) 50 Tìm điểm neo O(n) Vậy thời gian thực giảithuật quét Graham O(nlogn) Cài đặt giảithuật quét Graham 51 Trang ... quà” O(n2) Giải thuật quét Graham (Graham Scan) Cho tập P điểm mặt phẳng Giảithuật tìm bao lồi H – – 48 Tìm điểm A nằm bao lồi, gọi điểm neo; ví dụ điểm có tọa độ y nhỏ Thêm A vào H Sắp xếp...
... < n h/2 +1 < log2(n + 1) h < log2(n + 1) Phântích sâu sắc theo số Fibonacci, giới hạn 1.44 log(n + 2) Thêm nút vào AVL Đầu tiên thêm nút vào TKNP Cây cân Cân lại – – Xét AVL: tree T=(r,Tl,Tr) ... or case without reappearing double black r Định lý 49 Giảithuật xóa phần tử đỏ đen chứa n phần tử có độ phức thời gian O(logn) Giảithuật cần nhiều phép hiệu chỉnh (adjustment) phép cấu trúc ... See 3.6.1 chapter 3, Algorithm design, Goodrich d-cây Cây đa phân: nút có từ hai trở lên Cây có thứ tự: nút có tt Nút v d-nút: V có d≥2 nút Cây tìm kiếm đa phân (multiway search tree) có...
... phức tạp thuật toán RSA 10.11 10.2.2 Qui trình Figure 10.6 mã hóa, giải mã sinh khóa RSA 10.12 10.2.2 Sinh khóa RSA 10.13 10.2.2 Continued Mã hóa (Encryption) 10.14 10.2.2 Continued Giải mã (Decryption) ... 0…25 10.19 NO=1314 Vậy xem số P=1314 10.2.3 Continued Figure 10.7 mã hóa giải mã ví dụ 10.20 10.2.6 ví dụ áp dụng thuật Example 10 Giả sử ta chọn p q hai số 512-bit Tính n φ (n), Chọn e kiểm ... 10.1.2 Continued Bản rõ mã (Plaintext/Ciphertext) Bản rõ (P) chưa mã hóa Bản mã (C) mã hóa Mã hóa giải mã (Encryption/Decryption) hệ mã bất đối xứng dùng hai hàm hai khóa riêng biệt C = f (Kpublic...
... nh t m t cách d dàng 47 Mã phi ti n t nh phân Bi u di n cho m t mã phi ti n t m t nh phân v i m i c cho nút t ng ng v i ký t Chúng ta phân gi i m t mã nh phân cho m t ký t nh m t l i i t nút r ... ng n-1 lo i m t 40 Bài toán túi d ng phân s tt a dùng gi i thu t tham lam cho toán túi d ng phân s qui ho ch ng cho toán túi d ng 1-0 gi i toán túi d ng phân s , tr c tiên ta tính h s giá tr ... A2, …, An> g m n matr n, ta mu n tính tích ma tr n A1 A2 … An (5.1) c g i m - óng-ngo c- yTích c a xâu ma tr n (fully parenthesized ) n u m t ma tr n n ho c tích c a hai xâu ma tr n m - óng-ngo...
... giảithuật Prim cho đồ thị nêu Phải trình bày đầy đủ trạng thái mảng key p bước chạy giảithuật (1 điểm) b) Nếu cấu trúc heap dùng để thực hàng đợi có thứ tự ưu tiên Q giảithuật Prim, phântích ... phântích độ phức tạp trường hợp xấu giảithuật (giả sử đồ thị biểu diễn tập danh sách kế cận) (1 điểm) Câu (1.75 điểm) a Hãy giải bước toán tô màu đồ thị giảithuật tham lam với đồ thị vô hướng ... end; end; Câu (2 điểm) Cho giảithuật PRIM giải toán tìm bao trùm tối thiểu sau procedure MST-PRIM (G, w, r); /* G = (V,E) is weighted graph with the weight function w, and r is an arbitrary root...
... EXTRACT-MIN(Q); for each v ∈ Q and w(u, v) < key[v] then / * cập nhật thành phần p key đỉnh v */ begin p[v] := u; key[v]: = w(u, v) end end end; a) Phântích độ phức tạp giảithuật Prim dùng heap thực ... đầy đủ có trọng số vừa nêu Hãy áp dụng giảithuật xấp xỉ để giải toán Cho biết lộ trình cận tối ưu tìm thấy tổng chi phí lộ trình Phát biểu độ phức tạp giảithuật xấp xỉ (1.75 điểm) ... b) Hãy nêu ứng dụng thực tế toán tô màu đồ thị Câu (2.25 điểm) Cho giảithuật Prim để xây dựng bao trùm tối thiểu sau (0.5 điểm) procedure MST-PRIM (G, w, r); /* G =...
... tìm III GIẢITHUẬT THAM LAM Bài toán đầu tư sử dụng giảithuật tham lam • Ý tưởng : Giảithuật tham lam (Greedy Algorithm) giảithuật tối ưu hóa tổ hợp Giảithuật tìm kiếm, lựa chọn giải pháp ... đặt thuật toán : Ngôn ngữ Java • Đánh giá độ phức tạp : Độ phức tạp giảithuật O(nlogn) Là thuật toán xếp nhanh thực tế II GIẢITHUẬT TÌM KIẾM NHỊ PHÂN • Ý tưởng giảithuật tìm kiếm nhị phân ... Môn : PHÂNTÍCHVÀTHIẾTKẾGIẢITHUẬT I I CÁC GIẢITHUẬT SẮP XẾP 1.Insertion Sort : Ý tưởng thuận toán : Giả sử ta có trước dãy số theo thứ tự tăng dần, sau ta muốn chèn thêm phần tử vào dãy...
... Chơng I PHÂNTíCH & THIếTKếGIảITHUậT I mở đầu Hầu hết toán có nhiều giảithuật khác để giải chúng Vậy làm chọn đợc giảithuật tốt ? Việc chọn lựa phụ thuộc vào nhiều yếu tố nh ... CáC THUậT TOáN LầN NGƯợC: NGƯợC: Trong lập trình, ta phải xác định thuậtgiải để tìm lời giải cho toán định nhng theo luật tính toán cố định, mà cách thử -và- sai Cách chung phântích thử -và- sai ... chạy thuật toán nh đợc xác định kích thớc số lợng toán giá phải trả phân rã Trong phần ta quan sát phơng pháp sở để phântíchthuật toán nh trình bày vài công thức chuẩn thờng đợc áp dụng việc phân...
... Kĩ thuậtphântíchgiảithuậtGiảithuật C bu y N O W ! XC er O W F- w PD h a n g e Vi e ! XC er PD F- c u -tr a c k c h a n g e Vi e N bu y c 1.2 SỰ CẦN THIẾT PHẢI PHÂNTÍCHGIẢITHUẬT Trong giải ... có số giảithuật khác nhau, vấn đề cần phải đánh giá giảithuật để lựa chọn giảithuật tốt (nhất) Thông thường ta vào tiêu chuẩn sau: 1.- Giảithuật đắn 2.- Giảithuật đơn giản 3.- Giảithuật ... KĨ THUẬTPHÂNTÍCHGIẢITHUẬT 1.1 TỔNG QUAN 1.1.1 Mục tiêu Sau học chương này, sinh viên cần phải trả lời câu hỏi sau: - Tại cần phântích đánh giá giải thuật? - Tiêu chuẩn để đánh giá giải thuật...
... ý sau: 1.- Sự phân tích, đánh giá giảithuật cần thiết để lựa chọn giảithuật tốt, để cải tiến giảithuật 2.- Sử dụng khái niệm độ phức tạp ký hiệu ô lớn để đánh giá giảithuật 3.- Đối với chương ... Kĩ thuậtphântíchgiảithuật w w d o XC er Giảithuật w w w F- w C h a n g e Vi e ! XC er PD F- c u -tr a c k c bu y 1.7 TỔNG KẾT CHƯƠNG Trong chương này, cần phải nắm vững ý sau: 1.- Sự phân ... chập k n b) Tính thời gian thực giảithuật nói Nguyễn Văn Linh Trang 17 y bu to k lic d o m o m w o d o w w w Kĩ thuậtphântíchgiảithuật w w C lic k to Giảithuật C bu y N O W ! XC er O W...
... Các giảithuật đơn giản thường lấy O(n2) thời gian để xếp n đối tượng giảithuật thường dùng để danh sách có đối tượng Với giảithuật nghiên cứu phần: giải thuật, ví dụ, chương trình phântích ... Sắp xếp xen (Insertion Sort) 2.3.2.1 Giảithuật Trước hết ta xem phần tử a[1] dãy có thứ tự Nguyễn Văn Linh Trang 21 k lic d o o w m C Sắp xếp o m Giảithuật c to bu y bu to k lic C c u -tr ... tiến hành phương pháp nói Một mảng gồm phần tử gồm nhiều phần tử có khóa có thứ tự 2.4.2 Thiếtkếgiảithuật 2.4.2.1 Vấn đề chọn chốt Chọn khóa lớn hai phần tử có khóa khác kể từ trái qua Nếu...
... heap vào giá trị khoá nút (3) Hoán đổi a[1] cho cho phần tử cuối (4) Sắp lại sau bỏ phần tử cuối để trở thành heap Lặp lại trình (3) (4) nút ta mảng theo thứ tự giảm 2.5.3 Thiếtkế cài đặt giảithuật ... c to bu y bu k to Giảithuật lic C c u -tr ack w w d o w w w w N O W ! h a n g e Vi e N O W XC er PD h a n g e Vi e ! XC er PD F- c u -tr a c k c F- w y n +1 j= Quá trình kết thúc i = n-1, ta ... thước toán Gọi T(n) thời gian thức việc QuickSort mảng có n phần tử Thời gian để tìm chốt phân hoạch mảng phântíchphần 2.4.3.1 2.4.3.2 O(n) = n Khi n = 1, thủ tục QuickSort làm nhiệm vụ gọi hàm...