📄 pgm16_09.txt
字号:
//// This file contains the C# code from Program 16.9 of// "Data Structures and Algorithms// with Object-Oriented Design Patterns in C#"// by Bruno R. Preiss.//// Copyright (c) 2001--2002 by Bruno R. Preiss, P.Eng. All rights reserved.//// http://www.brpreiss.com/books/opus6/programs/pgm16_09.txt//public abstract class AbstractGraph : AbstractContainer, Graph{ protected int numberOfVertices; protected int numberOfEdges; protected Vertex[] vertex; public void BreadthFirstTraversal( Visitor visitor, int start) { bool[] enqueued = new bool[numberOfVertices]; for (int v = 0; v < numberOfVertices; ++v) enqueued[v] = false; Queue queue = new QueueAsLinkedList(); queue.Enqueue(vertex[start]); enqueued[start] = true; while (!queue.IsEmpty && !visitor.IsDone) { Vertex v = (Vertex)queue.Dequeue(); visitor.Visit(v); foreach (Vertex to in v.Successors) { if (!enqueued[to.Number]) { queue.Enqueue(to); enqueued[to.Number] = true; } } } } // ...}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -