任務
給定一組小號 = {大號我},我 ∈ [折線0,Ñ)大號我 =( p,...,p M i),加入具有共同點的多段線。加入設置折線的快速
例
的折線甲 =(1,2,3,4),乙 =(6,5,4)和Ç =(6,7,8)應(1,2,3,6,4,5,6,7,8)或K =(8,7,6,5,4,3,2,1)組成的折線。
解
對於每一個點p ù ∈ 大號我,U ∈ {0,中號我}檢查每大號Ĵ ∈ S \ {大號我}如果p v = p ü; p v ∈ 大號Ĵ,V ∈ {0,中號Ĵ}。如果是,請加入L i和L j。
問題
這是非常緩慢的,因爲ñ ≈ 1,000,000 ∑中號我 ≈億。
問題
你有一個建議,以改善我的樸素算法嗎?
你能列出角落案件的行爲嗎? – 2014-10-26 15:45:11
對不起,我想我不明白你的問題。 :-( – user2033412 2014-10-26 15:46:59
你用什麼數據結構來表示一條線?反轉和拼接成本高嗎? – Beta 2014-10-26 15:49:20