Sự tái phát yêu thích của tôi xuất hiện trong các thuật toán nhạy cảm đầu ra để tính toán vỏ lồi, đầu tiên là Kirkpatrick và Seidel , nhưng sau đó được lặp lại bởi những người khác. Gọi biểu thị thời gian để tính vỏ lồi của điểm trong mặt phẳng, khi thân lồi có đỉnh. (Giá trị của không được biết trước, ngoài giới hạn tầm thường .) Thuật toán của Kirkpatrick và Seidel mang lại sự tái phát
trong đó và vàn h h h ≤ n T ( n , h ) = { O ( n ) nếu n ≤ 3 hoặc h ≤ 3 T ( n 1 , h 1 ) + T ( n 2 , h 2 ) + O ( n ) nếu không n 1 , n 2T(n,h)nhhh≤n
T(n,h)={O(n)T(n1,h1)+T(n2,h2)+O(n)if n≤3 or h≤3otherwise
n 1 + n 2 = n h 1 + h 2 = hn1,n2≤3n/4n1+n2=nh1+h2=h .
Giải pháp là . Đây là một chút ngạc nhiên, vì không phải là tham số được chia đều. Nhưng trên thực tế, trường hợp xấu nhất của sự tái phát xảy ra khi và đều khoảng ; nếu bằng cách nào đó, luôn luôn là hằng số, thì giải pháp sẽ là .h h 1 h 2 h / 2 h 1 T ( n , h ) = O ( n )T(n,h)=O(nlogh)hh1h2h/2h1T(n,h)=O(n)
Tôi đã sử dụng một biến thể của sự tái phát này trong một trong những bài viết cấu trúc tính toán đầu tiên của mình :
trong đó và . Một lần nữa, giải pháp là và trường hợp xấu nhất xảy ra khi cả và luôn được chia đều. n 1 + n 2 = n g 1 +
T(n,g)={O(n)T(n1,g1)+T(n2,g2)+O(min{n1,n2})if n≤3 or g=0otherwise
n1+n2=ng1+g2=gO(nlogg)ng