亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將離散節點 ID 更改為連續節點 ID?

如何將離散節點 ID 更改為連續節點 ID?

喵喔喔 2021-09-11 19:37:58
我有一個圖表,其中節點的 id 是離散的。有什么辦法可以讓這些id連續同時保持原始節點之間的關系?例如,我有一個包含 6 個節點和 3 個邊的圖:1->2, 6->9, 8->7 如何使節點 id 連續,以便我可以有一個邊為:1->2 , 3->6, 5->4 其中“3”指的是“6”,“4”指的是“7”等。
查看完整描述

1 回答

?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

假設你有一個list邊 ( tuples),你可以使用defaultdict連續 id的技巧:


from collections import defaultdict


edges = [(1, 2), (6, 9), (8, 7), (6, 7), (9, 1)]


d = defaultdict(lambda: len(d) + 1)

id_edges = [(d[x], d[y]) for x, y in edges]

# [(1, 2), (3, 4), (5, 6), (3, 6), (4, 1)]

或開始于0:


d = defaultdict(lambda: len(d))

id_edges = [(d[x], d[y]) for x, y in edges]

[(0, 1), (2, 3), (4, 5), (2, 5), (3, 0)]


查看完整回答
反對 回復 2021-09-11
  • 1 回答
  • 0 關注
  • 125 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號