Dưới đây là một bằng chứng cho thấy thuật toán này chạy trong thời gian trong kỳ vọng và với xác suất cao.O(nm)
k{ 1 , 2 , . . . , tối thiểu ( c , n ) }{2,3,..,min(c,n)}{1,2,...,min(c,n)}
Bổ đề 1. Đối với thuật toán được sửa đổi này, bất kể các lựa chọn ngẫu nhiên của thuật toán, thời gian luôn là .O(nm)
Bằng chứng. Sửa lỗi đầu vào và và sửa các lựa chọn ngẫu nhiên của thuật toán một cách tùy ý. Trong mỗi (có thể đệ quy) gọi để phân vùng (), hai đối số tương ứng lần lượt là hai subarrays: một mảng con của và một subarray
của . Xác định cuộc gọi như vậy với hình chữ nhật
. Do đó, cuộc gọi cấp cao nhất là
và mỗi cuộc gọi đệ quy tương ứng với một hình chữ nhật phụ trongB [ i 1 - 1 , i 2 ] × [ j 1 - 1 , j 2 ] [ 0 , n ] × [ 0 , m ] n × m k × k kA[1..n]A [ i 1 . . i 2 ] A B [ j 1 . . j 2 ]B[1..m]A[i1..i2]AB[j1..j2]B[i1−1,i2]×[j1−1,j2][0,n]×[0,m]n×mhình chữ nhật. Các hình chữ nhật này tạo thành một cái cây, trong đó hình chữ nhật tương ứng với một cuộc gọi có hình chữ nhật tương ứng với các cuộc gọi được thực hiện trực tiếp bởi cuộc gọi đó. Mỗi hình chữ nhật cha được phân vùng bởi các hình chữ nhật con của nó, tạo thành một lưới (của hình chữ nhật không đồng nhất) với ít nhất 2. Tất nhiên mỗi góc của hình chữ nhật chỉ có tọa độ nguyên.k×kk
Thời gian chạy của thuật toán được giới hạn bởi một số lần không đổi tổng, trên các hình chữ nhật, chu vi của tất cả các hình chữ nhật này. (Điều này là do thời gian trong mỗi cuộc gọi là O (n + m) và giá trị của hình chữ nhật tương ứng là .)2(n+m)
Tôi khẳng định rằng trong bất kỳ tập hợp hình chữ nhật nào như được mô tả ở trên, tổng chu vi nhiều nhất là . Nếu đúng, điều này chứng tỏ bổ đề.12nm
Để chứng minh cho yêu cầu, trước tiên hãy quan sát rằng, vì , đối với bất kỳ hình chữ nhật cha mẹ nào, chu vi của cha mẹ nhiều nhất bằng 2/3 lần tổng chu vi của con cái. (Chu vi của cha mẹ là . Tổng chu vi của con cái là và )2 ( n + m ) ( 1 + k ) ( n + m ) k > = 2k≥22(n+m)(1+k)(n+m)k>=2
Tiếp theo là một đối số tính phí tiêu chuẩn rằng tổng số perimiter của tất cả các hình chữ nhật nhiều nhất là lần so với perimiter của chỉ các hình chữ nhật lá . (Quan sát ngụ ý rằng , trong đó là tổng chu vi của hình chữ nhật không có lá và là tổng chu vi của tất cả các hình chữ nhật. Điều này ngụ ý , và là tổng chu vi của hình chữ nhật lá.)P N ≤ ( 2 / 3 ) P T P N P T P T ≤ 3 ( P T - P N ) P T - P N(1+2/3+(2/3)2+…)=3PN≤(2/3)PTPNPTPT≤ 3 ( PT- PN)PT- PN
Tiếp theo, quan sát rằng các hình chữ nhật lá phân vùng hình chữ nhật ban đầu . Chu vi tối đa có thể có của lá thu được khi lá tương ứng với bình phương đơn vị có điểm cuối nguyên, trong trường hợp đó tổng chu vi của lá là . Do đó, tổng các chu vi nhiều nhất là , nghĩa là nhiều nhất là .4n × m3 ⋅ 44nm12 n3 ⋅ 4nm12 nm
Điều này chứng minh bổ đề 1.
Hệ quả: Thuật toán ban đầu chạy trong thời gian trong kỳ vọng.Ô ( nm )
Bằng chứng. Nếu phân vùng chọn , nó chỉ nhân đôi hình chữ nhật. Vì , xác suất nhiều nhất là 1/2. Do đó, số lần dự kiến mỗi hình chữ nhật được nhân đôi nhiều nhất là 1 (và số lượng bản sao dự kiến của mỗi hình chữ nhật nhiều nhất là 2). Do đó, đối với thuật toán ban đầu, tổng số dự kiến của các perimiter của tất cả các hình chữ nhật nhiều nhất gấp đôi so với thuật toán đã sửa đổi, tức là nhiều nhất là . Giống như trong phân tích của thuật toán đó, thời gian chạy tỷ lệ thuận với tổng này, . QEDn > 1 k = 1 24 nk = 1n > 1k = 1O ( n24 nmÔ ( nm )
Hệ quả. Các ràng buộc cũng giữ với xác suất cao (giả sử cả và có xu hướng vô cùng).mnm
Bằng chứng phác thảo. Sửa mọi lựa chọn ngẫu nhiên ngoại trừ số lượng trùng lặp của mỗi hình chữ nhật, thời gian tỷ lệ thuận với
Trong đó là tập hợp các hình chữ nhật được tạo, là số lần được nhân đôi (tức là lần cho hình chữ nhật đó) vàlà chu vi của .RXrrk=1| r| r
Σr ∈ R( 1 + Xr) | r |
RXrrk = 1| r |r
Các biến là độc lập và mỗilà , do đó, theo giới hạn của tiêu chuẩn Chernoff, xác suất mà tổng vượt quá hai lần kỳ vọng của nó là . (Cụ thể hơn, lấy , sau đó áp dụng Chernoff cho tổng của 's.) QED| r | O ( n + m ) = o ( n m ) o ( 1 ) Y r = ( 1 + X r ) | r | / 2 ( n + m ) Y r{ Xr: r ∈ R }| r |O(n+m)=o(nm)o(1)Yr= ( 1 + Xr)|r|/2(n+m)Yr
Tạm biệt: nếu thuật toán chọn ngẫu nhiên tối đa thay vì và sau đó thực hiện trong mỗi cuộc gọi (thay vì ), tổng thời gian vẫn sẽ là trong kỳ vọng.min ( n , m ) min ( c , n ) O ( m n ) O ( m + n ) O ( m n )kmin(n,m)min(c,n)O(mn)O(m+n)O(mn)
Bằng chứng. Đầu tiên lưu ý rằng tổng thời gian sẽ tỷ lệ thuận với tổng diện tích của tất cả các hình chữ nhật. Tổng này bằng tổng, trên tọa độ nguyên , của số lượng hình chữ nhật mà xảy ra. Đây là trong kỳ vọng bởi vì, trong kỳ vọng, bất kỳ trong hình chữ nhật ban đầu xảy ra trong hình chữ nhật . ( i , j ) O ( n m ) ( i , j ) O ( 1 )(i,j)(i,j)Ô ( n m )( tôi , j )Ô ( 1 )
Để thấy điều này, giả sử được chứa trong một hình chữ nhật và xem xét lệnh gọi phân vùng trên . Đặt . Đặt là hình chữ nhật là con (chứa ) của . Với xác suất ít nhất là , được chọn là ít nhất . Dựa vào điều đó, , do đó với xác suất không đổi nhiều nhất là 1. Nếu điều đó xảy ra, thì là một chiếc lá (không có con). Từ đó có số lượng hình chữ nhật dự kiếnr r q ( r ) = min ( n r , m r ) r ' ( i , j ) r 1 / 3 k ( 2 / 3 ) q ( r ) E [ q ( r ' ) ] ≤ 3 / 2 q ( r ' ) r ' (( tôi , j )rrq(r)=min(nr,mr)r′(i,j)r1/3k(2/3)q(r)E[q(r′)]≤3/2q(r′)r′O ( 1 )(i,j)là trong . QEDO(1)
(Liệu giới hạn có giữ được xác suất cao hay không là một câu hỏi thú vị .. Tôi nghĩ rằng nó sẽ. Chắc chắn sẽ giữ whp)O ( n m log ( n m ) )O(nm)O(nmlog(nm))