Chương I: Cơ sở toán học của lý thuyết thuật toán   <ul><li>Đánh giá độ phức tạp tính toán của chương trình theo ký hiệu O...
1. Đánh giá độ phức tạp tính toán của chương trình theo ký hiệu O <ul><li>Một số vấn đề trong việc phân tích thuật toán </...
Một số vấn đề trong việc phân tích thuật toán <ul><li>Tính đúng đắn </li></ul><ul><li>Tính đơn giản </li></ul><ul><li>Tính...
Phân tích thời gian thực hiện thuật  toán <ul><li>Phụ thuộc vào nhiều yếu tố:  </li></ul><ul><li>Phần cứng </li></ul><ul><...
Độ phức tạp tính toán của thuật toán   <ul><li>Ví dụ: Nếu thời gian thực hiện một thuật toán là T(n) = Cn 2  (C: hằng dươn...
Xác định độ phức tạp của thuật toán   <ul><li>Quy tắc tổng : </li></ul><ul><li>Nếu T 1 (n) = O(g 1 (n)) và T 2 (n) = O(g 2...
<ul><li>Quy tắc nhân : </li></ul><ul><li>Nếu T 1 (n) = O(g 1 (n)) và T 2 (n) = O(g 2 (n)) là độ phức tạp của P 1  và P 2 ,...
Phép toán tích cực  <ul><li>Là một phép toán trong thuật toán mà thời gian thực hiện nó không ít hơn thời gian thực hiện c...
T(n) phụ thuộc vào đặc điểm của dữ liệu   <ul><li>T(n) trong trường hợp thuận lợi nhất: T tốt </li></ul><ul><li>T(n) trong...
Upcoming SlideShare
Loading in …5
×

Cơ sở thuật toán

2,146 views

Published on

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

Cơ sở thuật toán

  1. 1. Chương I: Cơ sở toán học của lý thuyết thuật toán <ul><li>Đánh giá độ phức tạp tính toán của chương trình theo ký hiệu O </li></ul><ul><li>Máy Turing. Các lớp P, NP-khó và NP-đầy đủ (làm tiểu luận theo nhóm) </li></ul>
  2. 2. 1. Đánh giá độ phức tạp tính toán của chương trình theo ký hiệu O <ul><li>Một số vấn đề trong việc phân tích thuật toán </li></ul><ul><li>Phân tích thời gian thực hiện thuật toán </li></ul>
  3. 3. Một số vấn đề trong việc phân tích thuật toán <ul><li>Tính đúng đắn </li></ul><ul><li>Tính đơn giản </li></ul><ul><li>Tính tối ưu: </li></ul><ul><ul><li>Không gian nhớ </li></ul></ul><ul><ul><li>Thời gian </li></ul></ul>
  4. 4. Phân tích thời gian thực hiện thuật toán <ul><li>Phụ thuộc vào nhiều yếu tố: </li></ul><ul><li>Phần cứng </li></ul><ul><li>Chương trình dịch </li></ul><ul><li>Kích thước dữ liệu vào: Nếu gọi n là kích thước dữ liệu vào thì thời gian thực hiện một thuật toán, ký hiệu là T(n). </li></ul><ul><li>Độ phức tạp tính toán của thuật toán </li></ul>
  5. 5. Độ phức tạp tính toán của thuật toán <ul><li>Ví dụ: Nếu thời gian thực hiện một thuật toán là T(n) = Cn 2 (C: hằng dương), thì độ phức tạp tính toán của thuật toán này ký hiệu: T(n) = O(n 2 ). </li></ul><ul><li>Tổng quát: Nếu  C>0 và n 0 sao cho: </li></ul><ul><li>T(n)  Cg(n) khi n  n 0 </li></ul><ul><li>thì độ phức tạp của thuật toán: </li></ul><ul><li>T(n) = O(g(n)) </li></ul>
  6. 6. Xác định độ phức tạp của thuật toán <ul><li>Quy tắc tổng : </li></ul><ul><li>Nếu T 1 (n) = O(g 1 (n)) và T 2 (n) = O(g 2 (n)) là độ phức tạp của P 1 và P 2 , thì độ phức tạp của “chạy P 1 xong chạy P 2 ”: </li></ul><ul><li>T(n) = T 1 (n)+T 2 (n) = O(max(g 1 (n), g 2 (n))) </li></ul><ul><li>Tính chất: Nếu g 1 (n)  g 2 (n),  n  n 0 thì: </li></ul><ul><li>O(g 1 (n) + g 2 (n)) = O(g 2 (n)) </li></ul>
  7. 7. <ul><li>Quy tắc nhân : </li></ul><ul><li>Nếu T 1 (n) = O(g 1 (n)) và T 2 (n) = O(g 2 (n)) là độ phức tạp của P 1 và P 2 , thì độ phức tạp của “P 1 lồng P 2 ”: </li></ul><ul><li>T(n) = T 1 (n)T 2 (n) = O(g 1 (n)g 2 (n)) </li></ul><ul><li>Tính chất: </li></ul><ul><li>O(Cg(n)) = O(g(n)), với C là hằng </li></ul>
  8. 8. Phép toán tích cực <ul><li>Là một phép toán trong thuật toán mà thời gian thực hiện nó không ít hơn thời gian thực hiện các phép khác. </li></ul><ul><li>Một phương pháp xác định độ phức tạp tính toán của một thuật toán: </li></ul><ul><ul><li>Xác định một phép toán tích cực </li></ul></ul><ul><ul><li>Xác định g(n): số lần thực hiện của phép đó </li></ul></ul><ul><ul><li>Kết luận: O(g(n)) là độ phức tạp tính toán của thuật toán. </li></ul></ul>
  9. 9. T(n) phụ thuộc vào đặc điểm của dữ liệu <ul><li>T(n) trong trường hợp thuận lợi nhất: T tốt </li></ul><ul><li>T(n) trong trường hợp xấu nhất: T xấu </li></ul><ul><li>T(n) trung bình: T tb </li></ul>

×