[問題] DFS建特定條件下的Edge

看板Prob_Solve (計算數學 Problem Solving)作者時間8年前 (2016/07/01 23:40), 8年前編輯推噓0(004)
留言4則, 1人參與, 最新討論串1/1
大大們好 第一次來本版發言 若有冒犯之處敬請見諒 最近需要製作DFS所需要的Graph。Graph中每個node的位置平均分配如下圖所示的各種顏色區塊的邊界(p.s邊界只有水平與垂直兩種方向) http://imgur.com/0uEts8u
現在要建立任兩node之間的edge。其中edge只能出現在單一顏色區塊內 (所以紅線標示的就是錯誤的edge,黑色才是正確的)。想請問要怎麼做才能建立出正確的edge?先謝謝大家幫忙了! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.180.243.195 ※ 文章網址: https://www.ptt.cc/bbs/Prob_Solve/M.1467387649.A.7DE.html ※ 編輯: dinex (175.180.243.195), 07/01/2016 23:42:45

07/02 09:59, , 1F
這問題跟 DFS 無關,提 DFS 是多餘的 :p
07/02 09:59, 1F

07/02 10:01, , 2F
色塊區域定義好以後,檢查一個 edge 是否通過兩個以上的區塊即
07/02 10:01, 2F
那如果不考慮用另外的資料結構去存原本圖形嗎? 目前每個node有存本身的絕對位置與跟哪些區域相鄰 不知道這樣可不可以直接判斷? ※ 編輯: dinex (112.104.141.232), 07/02/2016 23:43:15

07/04 11:37, , 3F
看你的 edges 是不是都是從你的 nodes 構成,照你的圖
07/04 11:37, 3F

07/04 11:38, , 4F
看起來只要檢查是不是你要新增的 edge 是不是跟區塊的邊有交叉
07/04 11:38, 4F
文章代碼(AID): #1NTey1VU (Prob_Solve)
文章代碼(AID): #1NTey1VU (Prob_Solve)