コード例 #1
0
 def bfs(self, r: int):
     seen = np.zeros(self.n, np.bool_)
     l = []
     q = ArrayQueue()
     q.add(r)
     seen[r] = True
     while q.size() > 0:
         i = q.remove()
         l.append(i)
         ngh = self.out_edges(i)
         for k in range(0, ngh.size()):
             j = ngh.get(k)
             if seen[j] == False:
                 q.add(j)
                 seen[j] = True
     return l