"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Recorridos de gráficos

Recorridos de gráficos

Publicado el 2024-08-16
Navegar:405

Primero la profundidad y primero la amplitud son dos formas comunes de recorrer un gráfico.
Recorrido del gráfico es el proceso de visitar cada vértice del gráfico exactamente una vez. Hay dos formas populares de recorrer un gráfico: recorrido primero en profundidad (o búsqueda primero en profundidad) y recorrido primero en amplitud (o recorrido primero en amplitud (o recorrido primero en profundidad (o recorrido primero en profundidad -primera búsqueda). Ambos recorridos dan como resultado un árbol de expansión, que se puede modelar usando una clase, como se muestra en la Figura siguiente. Tenga en cuenta que Tree es una clase interna definida en la clase AbstractGraph. AbstractGraph.Tree es diferente de la interfaz Tree definida en Búsqueda de un elemento. AbstractGraph.Tree es una clase especializada diseñada para describir la relación padre-hijo de los nodos, mientras que la interfaz Tree

define operaciones comunes como buscar, insertar y eliminar en un árbol. Dado que no es necesario realizar estas operaciones para un árbol de expansión,

AbstractGraph.TreeGraph Traversals no está definido como un subtipo de

Tree

.

La clase

Tree se define como una clase interna en la clase AbstractGraph en las líneas 226–293 en AbstractGraph.java. El constructor crea un árbol con la raíz, las aristas y un orden de búsqueda. La clase Tree define siete métodos. El método getRoot() devuelve la raíz del árbol. Puede obtener el orden de los vértices buscados invocando el método getSearchOrder(). Puede invocar getParent(v) para encontrar el padre del vértice v en la búsqueda. Al invocar getNumberOfVerticesFound() se devuelve el número de vértices buscados. El método getPath(index) devuelve una lista de vértices desde el índice de vértices especificado hasta la raíz. Al invocar printPath(v)

se muestra una ruta desde la raíz hasta v. Puede mostrar todos los bordes del árbol utilizando el método

printTree()
.

Declaración de liberación Este artículo se reproduce en: https://dev.to/paulike/graph-traversals-2jg9?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3