2
INPUT:-
mainlist:[12345,23456,09768]
Need to construct the following dependency graph
12345 has 01242(internal dep),34567(externaldep)
01242 has 23456(internaldep),56789,32345(externaldep)
34567 has 11111(internal dep),no external dependencies
23456 has 33456(internaldep),no external dependencies
56789 no dependencies
32345 no dependencies
11111 no dependencies
33456 no dependencies
09768 has 12222(internal dep),34333(External dep)
12222 no dependencies
34333 no dependencies
OUTPUT:-
[12345,01242,34567,23456,56789,32345,11111,33456,09768,12222,34333]
我有一些數據庫對象完全鏈接到彼此,像上面這樣的依賴關係......我想要做的是編寫一個算法來檢索該信息並表示所有這作爲一個圖表。現在我正在寫一個僞代碼,然後我應該能夠寫入python實現這似乎是一個遞歸算法,這就是我卡住的地方!用於生成無環有向圖的遞歸算法
對於主列表中的每個項目,我都試圖找到內部依賴關係和外部依賴關係,直到沒有依賴關係,並創建一個包含所有更改的列表。
build_dep_list=[]
local_list=[]
for each item in mainlist:
local_list.append(item)
build_dep_list.append(item)
for each localitem in local_list:
head = localitem
internal_dep_list =getinternaldep(change)
external_dep_list= getexternaldep(change)
append.internal_dep_list.local_list
append.external_dep_list.local_list
append.internal_dep_list.build_dep_list
append.external_dep_list.build_dep_list
delete(head).local_list
def getinternaldep:
//code1
def getexternaldep:
//code2
關於你的輸出,你爲什麼要'34567'兩次?另外,'56789,32345,11111,33456'的順序是否必須是這個或者可以,比如'56789,32345,33456,11111'? – gatto 2013-04-26 07:59:44
@gatto - 我編輯它... 34567應該只打印一次..但順序是imp ..但它應該按照更改順序和依賴關係 – user2125827 2013-04-26 08:03:29
「更改」與依賴關係如何關聯? – tripleee 2013-04-26 14:08:36