図及びアルゴリズム――アルゴリズムを巡回する(反復的に実現する)
5784 ワード
今まで、アルゴリズムについて、少しずつ説教してきましたが、風邪を引かないようにしています.うん、今回はこの問題はどうすればいいか分かります.確かにこの問題を解決しました.しかし、多くの問題と一緒に来ました.この世界には様々なアルゴリズムがあります.
あるアルゴリズムの流れはまだ長すぎて、頭が足りないです.これほど多くの細部を覚えられるところがありますか?覚えても長くはなりません.覚えていても、典型的なものしか覚えられません.愛は甘くて酸っぱいです.
もううるさくないです.今回お世話になりましたのは巡回(捜索)です.モデルの仮定です.
1.図は網で、あなたは爬虫類で、爬虫類はノードごとにしっかりしているかどうかを確認したいです.
2.Actor爬虫類として、状態のある対象であり、毎回異なる環境にある場合は更新が必要である.
3.毎回状態を更新する方式は似ています.
本人の経験を結び付けます.反復アルゴリズムは通常考慮します.
a.どのような状態がありますか?背景と環境はメンテナンスが必要です.
b.関連量をどのように初期化しますか?
c.状態はどのように更新されますか?
d.ステータスはいつ更新されますか?
反復の循環特性は、どのカットから入ればいいですか?初期化してもいいですか?
そうです.これは微分方程式と似ています.初期状態が重要です.
あるアルゴリズムの流れはまだ長すぎて、頭が足りないです.これほど多くの細部を覚えられるところがありますか?覚えても長くはなりません.覚えていても、典型的なものしか覚えられません.愛は甘くて酸っぱいです.
もううるさくないです.今回お世話になりましたのは巡回(捜索)です.モデルの仮定です.
1.図は網で、あなたは爬虫類で、爬虫類はノードごとにしっかりしているかどうかを確認したいです.
2.Actor爬虫類として、状態のある対象であり、毎回異なる環境にある場合は更新が必要である.
3.毎回状態を更新する方式は似ています.
本人の経験を結び付けます.反復アルゴリズムは通常考慮します.
a.どのような状態がありますか?背景と環境はメンテナンスが必要です.
b.関連量をどのように初期化しますか?
c.状態はどのように更新されますか?
d.ステータスはいつ更新されますか?
反復の循環特性は、どのカットから入ればいいですか?初期化してもいいですか?
そうです.これは微分方程式と似ています.初期状態が重要です.
class Graph:
def __init__(self):
self.graph: Dict[str, List[str]] = defaultdict(list)
def addEdge(self, u, v):
self.graph[u].append(v)
def dfs_traverse(graph, start):
visited, stack = set(), [start]
while stack:
node = stack.pop()
if node not in visited:
visited.add(node)
for nextNode in graph[node]:
if nextNode not in visited:
stack.append(nextNode)
return visited
def bfs_traverse(graph, start):
visited, queue = set(), [start]
while queue:
node = queue.pop(0) # ,
if node not in visited:
visited.add(node)
for nextNode in graph[node]:
if nextNode not in visited:
queue.append(nextNode)
return visited
# Actor , ,
def BFS(graph, s):
visited = set()
queue = []
queue.append(s) # ,
while queue:
s = queue.pop(0)
print(s, end=" ")
for i in graph[s]:
if i not in visited:
visited.add(i)
queue.append(i)
return visited
def BFS2(graph, s):
visited = set()
queue = []
while True:
print(s, end=" ")
for i in graph[s]:
if i not in visited:
visited.add(i)
queue.append(i)
if queue:
s = queue.pop(0)
else:
break
print(queue)
return visited
転載先:https://www.cnblogs.com/wdmx/p/10076336.html