演算法:先獲取點的列表,索引對應點的順序,值對應能通向的節點的列表——>[ [1,2,3] , [2,4] , [3,4] , [ ] , [ ] ]
給每個點標上標籤,是否當前路線"now「 和 該節點對應的鄰節點,用列表與字典表示——> [ for neighbours in adj]
[,,遍歷每個節點:建立乙個方法has_cycle對每個節點進行遞迴運算,判斷該節點的visited是否為當前,若不是則對該節點的visited設定為當前,然後對該節點的鄰節點進行遞迴,如果該鄰節點是當前,則已經完成迴圈(因為當前都是在這一次遍歷建立的),如果不是,繼續遞迴該鄰節點的鄰節點,當走到deadend時候,將該節點的當前設定為false。返回上乙個遞迴,獲取上乙個遞迴的節點的下乙個鄰節點,重複判斷。
#uses python3
import sys
def has_cycle(node,nodes):
if node["visited"] == 'now':
return 1
node["visited"]='now'
for neighbour_index in node["neighbours"]:
if has_cycle(nodes[neighbour_index],nodes):
return 1
node["visited"]=false
return 0
def acyclic(adj):
return 0
if __name__ == '__main__':
input = sys.stdin.read()
data = list(map(int, input.split()))
n, m = data[0:2]
data = data[2:]
edges = list(zip(data[0:(2 * m):2], data[1:(2 * m):2]))
adj = [ for _ in range(n)]
for (a, b) in edges:
nodes = list((for neighbours in adj))
print(acyclic(adj))
windows c獲取檔案md5值確定是否改變
在windows下做一些小工具的時候,希望做到根據配置檔案來對pc做一些配置下發的操作 例如改主機名改網路等 這就需要做到每個一段時間檢測配置檔案,並執行相應配置,但是當我們配置檔案沒有修改時,就不需要做配置了,因此需要對配置檔案進行md5檢測判斷檔案是否有改變 此處是獲取檔案的md5值,檔名在ne...
js實現根據中的文字值確定是否輸出該行
現在有個需求,對於乙個頁面上的中的文字,對於中class相同的一列進行範圍篩選,是為特定的日期格式和09 29 02 19 40的相隔時間為多少。思想就是找到中的值,寫了乙個getelementsbyclassname n 的方法,根據正規表示式跟文字值判斷,然後寫乙個兩位分隔的方法getnum n...
用vbs實現確定是否安裝了某個特定的補丁
問 您好,指令碼專家!如何使用指令碼來確定是否安裝了某個特定的補丁?gm 答 您好,gm。您知道,不久以前這個問題可能被我們 不小心 扔進了廢紙簍並且假裝從未看到。為什麼?嗯,以前的時候,我們獲得關於補丁 快速修復和其他更新的資訊的唯一方法就是使用 wmi 類 win32 quickfixengin...