Chỉ ra mức độ khó của bài toán Chỉ ra mức độ khó của bài toán

Một phần của tài liệu Thuật toán (Trang 43 - 47)

3.1. Đánh giá cận dưới

3.1. Đánh giá cận dưới

3.1.1. Độ phức tạp tính toán của bài toán

3.1.1. Độ phức tạp tính toán của bài toán

Ký hiệu T(A) là thời gian tính của thuật toán A với đầu Ký hiệu T(A) là thời gian tính của thuật toán A với đầu

vào X. Khi đó, thời gian tính trong tình huống

vào X. Khi đó, thời gian tính trong tình huống tồi tồi nhất

nhất của của thuật toán Athuật toán A đối với dữ liệu vào đối với dữ liệu vào kích kích thước n

thước n là là T

TAA(n)=max{T(n)=max{TAA(X): |X|=n}(X): |X|=n} Độ phức tạp trong tình huống

Độ phức tạp trong tình huống tồi nhấttồi nhất của của bài toán Pbài toán P là thời gian tính trong tình huống

là thời gian tính trong tình huống tồi nhấttồi nhất của của thuật toán tốt nhất

thuật toán tốt nhất để giải nó. Nghĩa là để giải nó. Nghĩa là T

TPP(n) = min{T(n) = min{TAA(n): A (n): A ∈∈ ∆∆}=min{max{T}=min{max{TAA(X)|X|=n}:A (X)|X|=n}:A ∈∈ ∆∆}} Trong đó

Cận trên

Cận trên. Nếu thuật toán A giải bài toán P có thời gian tính trong . Nếu thuật toán A giải bài toán P có thời gian tính trong tình huống tồi nhất là T

tình huống tồi nhất là TAA(n) = O(f(n)) thì(n) = O(f(n)) thì

T

TPP(n) <= T(n) <= TAA(n) =O(f(n)).(n) =O(f(n)).

Nghĩa là ta có cận trên cho độ phức tập của bài toán P (

Nghĩa là ta có cận trên cho độ phức tập của bài toán P (vì mọi vì mọi thuật toán tốt hơn sẽ cho cận trên tốt hơn

thuật toán tốt hơn sẽ cho cận trên tốt hơn)) Cận dưới

Cận dưới. Việc đánh giá cận dưới của bài toán là chỉ ra mức độ . Việc đánh giá cận dưới của bài toán là chỉ ra mức độ khó của bài toán.

khó của bài toán.

Để chỉ ra Để chỉ ra T Tpp(n) = (n) = ΩΩ(f(n))(f(n)) ta cần chỉ ra rằng ta cần chỉ ra rằng

i) Có thuật toán với thời gian tính

i) Có thuật toán với thời gian tính ΩΩ(f(n)) để giải bài toán P(f(n)) để giải bài toán P

ii) Mọi thuật toán giải bài toán P đều đòi hỏi thời gian tính trong

ii) Mọi thuật toán giải bài toán P đều đòi hỏi thời gian tính trong

tình huống tồi nhất là

tình huống tồi nhất là ΩΩ(f(n)).(f(n)). (adsbygoogle = window.adsbygoogle || []).push({});

Đòi hỏi ii) có thể thay bởi: Cận dưới cho độ phức tạp tính toán

Đòi hỏi ii) có thể thay bởi: Cận dưới cho độ phức tạp tính toán

của bài toán P là

3.1.2. Các phương pháp đánh giá cận dưới độ phức tạp tính

3.1.2. Các phương pháp đánh giá cận dưới độ phức tạp tính

toán của bài toán

toán của bài toán

a)

a) PP sử dụng cây quyết địnhPP sử dụng cây quyết định

• Cây quyết định là cây mà mỗi đỉnh của nó tương ứng với Cây quyết định là cây mà mỗi đỉnh của nó tương ứng với

một truy vấn dữ liệu. Các cạnh của nó tương ứng với các

một truy vấn dữ liệu. Các cạnh của nó tương ứng với các

khả năng trả lời câu hỏi. Mỗi lá tương ứng với một đầu ra.

khả năng trả lời câu hỏi. Mỗi lá tương ứng với một đầu ra.

• Để tính toán với cây quyết định, ta bắt đầu từ gốc và đi Để tính toán với cây quyết định, ta bắt đầu từ gốc và đi

theo một đường đi đến lá. Tại mỗi nút trung gian, câu trả

theo một đường đi đến lá. Tại mỗi nút trung gian, câu trả

lời cho truy vấn sẽ dẫn ta tới nut tiếp theo. Khi đến lá, ta

lời cho truy vấn sẽ dẫn ta tới nut tiếp theo. Khi đến lá, ta

thu được một đầu ra.

thu được một đầu ra.

• Thời gian tính của thuật toán cây quyết định là số truy vấn Thời gian tính của thuật toán cây quyết định là số truy vấn

trên đường đi từ gốc đến lá.

trên đường đi từ gốc đến lá.

Như vậy,

Như vậy,

⇒ Thời gian tính trong tình huống tồi nhất của thuật toán Thời gian tính trong tình huống tồi nhất của thuật toán sẽ là độ cao của cây quyết định

sẽ là độ cao của cây quyết định

⇒ (adsbygoogle = window.adsbygoogle || []).push({});

• Việc xác định cận dưới nhờ sử dụng cây Việc xác định cận dưới nhờ sử dụng cây quyết định được dựa trên lập luận: quyết định được dựa trên lập luận:

quyết định được dựa trên lập luận:

Một phần của tài liệu Thuật toán (Trang 43 - 47)