Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

Pseudo Code

الدرس 4 من 9 في دورة البحث بالعمق أولاً - خوارزميات المخططات على Coddy.

buildAdjacency(n, edges):
   adj = n empty lists
   for each pair (u, v) in edges:
      adj[u].add(v)
      adj[v].add(u)         # undirected
   sort every adj[i] ascending

dfs(n, edges, start):
   build adjacency
   visited = all false
   stack = [start]
   order = []
   while stack not empty:
      node = stack.pop()
      if visited[node]: continue
      visited[node] = true
      order.add(node)
      for nb in adj[node] from last to first:
         if not visited[nb]: stack.push(nb)
   return order
  • تقوم قائمة الجوار بتحويل مصفوفة الحواف المسطحة إلى قائمة مرتبة من الجيران لكل رأس.
  • إن دفع الجيران من الأخير إلى الأول يجعل المكدس يعيد الجار الأصغر أولاً، وبذلك يكون ترتيب الزيارة محددًا.

جرّب بنفسك

لا يتضمّن هذا الدرس تحدّيًا برمجيًا.

quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس البحث بالعمق أولاً - خوارزميات المخططات