本文提出了一種名為"射線快速凸包"的簡單隨機化算法,用於構建平面上一組n個點的凸包。該算法的期望運行時間為O(n log h),其中h是凸包上的點數。
該算法與著名的隨機化快速排序算法精神相似,即反復選擇一個隨機"樞紐"點,並根據該樞紐點將子問題分割。算法的關鍵步驟是使用射線查詢操作來確定樞紐點將點集分割的方式。我們提供了一種簡單的隨機增量射線查詢算法,其期望執行的方向測試次數最多為2n。
與原始的確定性快速凸包算法不同,該隨機化算法的期望運行時間與輸入點分布無關,並且可以與更複雜的算法相媲美或優於它們。例如,我們證明了該隨機化算法在n個點均勻分布於有界凸區域的情況下,其期望運行時間為O(n),與確定性快速凸包算法相同。我們還提供了實驗分析,顯示該隨機化算法在實踐中與確定性快速凸包算法相當或更快。
In eine andere Sprache
aus dem Quellinhalt
arxiv.org
Wichtige Erkenntnisse aus
by Michael T. G... um arxiv.org 10-01-2024
https://arxiv.org/pdf/2409.19784.pdfTiefere Fragen