Graph<T> class
- Implemented types
-
- IGraph<
T> - IGraphEditable<
T> - IGraphIterable<
T>
- IGraph<
- Available extensions
Constructors
Properties
-
backtrackIterator
→ Iterator<
List< Node> > -
Создает итератор для обхода с backtracking
no setteroverride
-
breadthIterator
→ Iterator<
Node> -
Итератор для обхода в ширину
no setteroverride
-
breadthNodes
→ Iterable<
Node> -
Available on IGraphIterable<
Итерация по узлам в порядке обхода в ширинуT> , provided by the GraphIterable extensionno setter -
depthIterator
→ Iterator<
Node> -
Итератор для обхода в глубину
no setteroverride
-
depthNodes
→ Iterable<
Node> -
Available on IGraphIterable<
Итерация по узлам в порядке обхода в глубинуT> , provided by the GraphIterable extensionno setter -
edges
→ Map<
Node, Set< Node> > -
no setteroverride
-
edgesWithEmptySets
→ Map<
Node, Set< Node> > -
no setter
- graphString → String
-
no setteroverride
- hashCode → int
-
The hash code for this object.
no setterinherited
-
leaves
→ Iterable<
Node> -
Available on IGraphIterable<
Итерация по листьям графаT> , provided by the GraphIterable extensionno setter -
leavesIterator
→ Iterator<
Node> -
Итератор для обхода листьев
no setteroverride
-
levelIterator
→ Iterator<
Set< Node> > -
Итератор по уровням
no setteroverride
-
levels
→ Iterable<
Set< Node> > -
Available on IGraphIterable<
Итерация по уровням графаT> , provided by the GraphIterable extensionno setter -
nodeData
→ Map<
String, T> -
no setteroverride
-
nodes
→ Map<
String, Node> -
no setteroverride
-
parents
→ Map<
Node, Node> -
no setteroverride
-
paths
→ Iterable<
List< Node> > -
Available on IGraphIterable<
Итерация по всем путям в графеT> , provided by the GraphIterable extensionno setter - root → Node
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addEdge(
Node parent, Node child) → void -
override
-
addNode(
Node node) → void -
override
-
analyzeStructure(
) → Map< String, dynamic> -
Available on IGraph<
Анализирует структуру графа и возвращает статистикуT> , provided by the GraphAnalytics extension -
calculateEditDistance(
IGraph other) → int -
Available on IGraph<
Вычисляет "расстояние редактирования" между графами (минимальное количество операций для превращения одного графа в другой)T> , provided by the GraphAnalytics extension -
clear(
) → void -
override
-
clearCache(
) → void - Очищает кэш для освобождения памяти Используйте этот метод, если нужно временно освободить память, например, когда граф долго не используется
-
containsNode(
String nodeKey) → bool -
override
-
extractSubtree(
String key, {bool copy = true}) → IGraphEditable< T> -
Создает новый граф, используя указанный узел как корень.
override
-
filtered<
R> (Iterator< R> source, bool predicate(R)) → Iterator<R> -
Создает фильтрованный итератор
override
-
findCentralNodes(
) → Set< Node> -
Available on IGraph<
Находит центральные узлы графа Центральным считается узел, от которого максимальное расстояние до любого листа минимальноT> , provided by the GraphAnalytics extension -
findLowestCommonAncestor(
Node first, Node second) → Node? - Находит наименьшего общего предка для двух узлов
-
findRepeatingSubtrees(
) → Map< String, List< Node> > -
Available on IGraph<
Находит повторяющиеся поддеревьяT> , provided by the GraphAnalytics extension -
getDataCacheMetrics(
) → Map< String, dynamic> - Получить метрики использования кэша данных
-
getDepths(
) → Map< Node, int> -
override
-
getFullVerticalPath(
Node node) → Set< Node> -
Возвращает все вершины от корня до листьев, включая путь до
node
.override -
getLeaves(
{Node? startNode}) → Set< Node> -
override
-
getNodeByKey(
String key) → Node? -
override
-
getNodeData(
String key) → T? -
override
-
getNodeEdges(
Node node) → Set< Node> -
override
-
getNodeLevel(
Node node) → int -
override
-
getNodeParent(
Node node) → Node? -
override
-
getPathToNode(
Node node) → Set< Node> -
override
-
getSiblings(
Node node) → Set< Node> -
override
-
getVerticalPathBetweenNodes(
Node first, Node second, {Map< String, int> ? depths}) → Set<Node> -
Возвращает путь между двумя вершинами внутри одной "ветки".
override
-
isAncestor(
{required Node ancestor, required Node descendant}) → bool -
Проверяет, является ли один узел предком другого
override
-
isBalanced(
) → bool -
Available on IGraph<
Проверяет, сбалансировано ли дерево Дерево считается сбалансированным, если разница в глубине любых двух поддеревьев не превышает 1T> , provided by the GraphAnalytics extension -
isIsomorphicTo(
IGraph other) → bool -
Available on IGraph<
Проверяет, изоморфны ли два графа Два графа изоморфны, если они имеют одинаковую структуру, независимо от порядка потомковT> , provided by the GraphAnalytics extension -
mapped<
R> (Iterator< T> source, R mapper(T)) → Iterator<R> -
Создает итератор с трансформацией
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
pathBetween(
Node start, Node end) → Iterable< Node> - Создает Iterable для пути между узлами
-
pathBetween(
Node start, Node end) → Iterable< Node> -
Available on IGraphIterable<
Создает Iterable для пути между узламиT> , provided by the GraphIterable extension -
pathIterator(
Node start, Node end) → Iterator< Node> -
Создает итератор для обхода пути между узлами
override
-
removeEdge(
Node parent, Node child) → void -
override
-
removeNode(
Node node) → void -
override
-
subtree(
Node root) → Iterable< Node> - Создает Iterable для поддерева
-
subtree(
Node root) → Iterable< Node> -
Available on IGraphIterable<
Создает Iterable для поддереваT> , provided by the GraphIterable extension -
subtreeIterator(
Node root) → Iterator< Node> -
Создает итератор для обхода поддерева
override
-
toMermaid(
[GraphStyle style = GraphStyle.defaultStyle]) → String -
Available on IGraph<
Генерирует Mermaid-диаграмму для графаT> , provided by the GraphVisualization extension -
toMermaidHtml(
[GraphStyle style = GraphStyle.defaultStyle]) → String -
Available on IGraph<
Генерирует HTML с Mermaid-диаграммойT> , provided by the GraphVisualization extension -
toString(
) → String -
A string representation of this object.
inherited
-
updateNodeData(
String key, T data) → void -
override
-
visitBreadth(
VisitCallback visit, {Node? startNode}) → int -
override
-
visitDepth(
VisitCallback visit, {Node? startNode}) → void -
override
-
visitDepthBacktrack(
BacktrackCallback visit) → void -
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited