你這個 matrix 資料不需要存在每個 node 上
而是可以存在一個大 matrix 當中
因為一旦你有 input link 和 output link
那這兩個 link 經過哪一個 node 就是確定的
所以你只需要在外部存一個大 matrix:
AB BC CD BE
AB [ ]
BC [ ]
CD [ ]
BE [ ]
※ 引述《grace7616 (臨玥)》之銘言:
: ( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
: ( 未必需要依照此格式,文章條理清楚即可 )
: 遇到的問題: (題意請描述清楚)
: 我目前在寫一個圖論程式
: 假設我的圖是這樣好了
: A→B→C→D
: ↘
: E
: 每一個node N都有一個matrix K(N)
: matrix的大小是node N的input link數 x output link數
: 以上圖來說node B的matrix就是
: BC BE
: ┌ ┐
: AB│ │
: └ ┘
所以當你的 node B 需要這塊資料時
就去上面那個大矩陣中的藍色區域拿資料即可
不用擔心 node 所需要用的資料區塊會重疊
這麼一來你就可以放心地用 link 編號來當 matrix index
: 因為這個矩陣的index就是這個node的input和ouput link的編號
: 每個矩陣又不一樣
: 可是對程式來說矩陣的index都是0,1,...
: 目前我想到的方法是土法煉鋼
: 就創一個另外的矩陣去記錄index跟link編號的對應關係
: 可是這種方法感覺很沒效率
: 想請問板上的大大有沒有其他的方法可以紀錄其對應關係
: 希望得到的正確結果:紀錄矩陣的index跟link編號的對應關係
: 程式跑出來的錯誤結果:無
: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
: Dev-C++
: 補充說明:
: 謝謝各位大大
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.29.108