-
- Type Parameters:
N- Тип вершины графаE- Тип ребра между вершинами
- All Known Implementing Classes:
AbstractPath,BasicPath
public interface Path<N,E>Описывает путь в графе- Author:
- gocha
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classPath.DirectionОписывает напарвления движения
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Path<N,E>clear()Создает новый пустой путьPath<N,E>clone()Создание клонаintcount(N n)Кол-во определенной вершины в путиList<Path<N,E>>cycles()Возвращает циклы в путиEedge(int beginIndex, int endExc)Получение ребра между указаными вершинами.List<E>edges(int beginIndex, int endExc)Получение ребер между указанными вершинамиList<Edge<N,E>>fetch(int beginIndex, int endExc)Получение ребер между указанными вершинамиbooleanhas(N a)Проверяет содержит ли путь вершинуbooleanhasCycles()Проверят путь на наличие цикловbooleanisEmpty()Возвращает признак что путь пустой - не содержит вершин и реберPath<N,E>join(N n, E e)Создает новый путь с добавленным ребром в концеNnode(int nodeIndex)Возвращает вершинуintnodeCount()Возвращает кол-во вершин в путиPath<N,E>segment(int beginIdx, int endExc)Возвращает под путьPath<N,E>start(N n)Создает новый путь с начальной вершиной
-
-
-
Method Detail
-
has
boolean has(N a)
Проверяет содержит ли путь вершину- Parameters:
a- вершина A- Returns:
- true - вершина содержится в пути
-
count
int count(N n)
Кол-во определенной вершины в пути- Parameters:
n- вершина- Returns:
- кол-во
-
nodeCount
int nodeCount()
Возвращает кол-во вершин в пути- Returns:
- кол-во вершин
-
node
N node(int nodeIndex)
Возвращает вершину- Parameters:
nodeIndex- индекс вершины- Returns:
- вершина
-
edges
List<E> edges(int beginIndex, int endExc)
Получение ребер между указанными вершинами- Parameters:
beginIndex- начальная вершинаendExc- конечная (исключительно) вершина- Returns:
- список ребер
-
edge
E edge(int beginIndex, int endExc)
Получение ребра между указаными вершинами. Растояние между вершинами, должно быть 1 ребро.- Parameters:
beginIndex- начальная вершинаendExc- конечная (исключительно) вершина- Returns:
- ребро
-
fetch
List<Edge<N,E>> fetch(int beginIndex, int endExc)
Получение ребер между указанными вершинами- Parameters:
beginIndex- начальная вершинаendExc- конечная (исключительно) вершина- Returns:
- список ребер
-
isEmpty
boolean isEmpty()
Возвращает признак что путь пустой - не содержит вершин и ребер- Returns:
- true - путь пустой
-
start
Path<N,E> start(N n)
Создает новый путь с начальной вершиной- Parameters:
n- Начальная вершина- Returns:
- новый путь
-
join
Path<N,E> join(N n, E e)
Создает новый путь с добавленным ребром в конце- Parameters:
e- Ребро/дугаn- Вершина- Returns:
- новый путь
-
hasCycles
boolean hasCycles()
Проверят путь на наличие циклов- Returns:
- true - в пути присуствуют циклы
-
-