Class BasicPath<N,​E>

java.lang.Object
xyz.cofe.collection.graph.AbstractPath<N,​E>
xyz.cofe.collection.graph.BasicPath<N,​E>
Type Parameters:
N - Тип вершины
E - Тип ребра
All Implemented Interfaces:
Path<N,​E>

public class BasicPath<N,​E>
extends AbstractPath<N,​E>
Базовый путь
Author:
gocha
  • Nested Class Summary

    Nested classes/interfaces inherited from interface xyz.cofe.collection.graph.Path

    Path.Direction
  • Field Summary

    Fields 
    Modifier and Type Field Description
    protected java.util.List<Edge<N,​E>> list  

    Fields inherited from class xyz.cofe.collection.graph.AbstractPath

    direction
  • Constructor Summary

    Constructors 
    Constructor Description
    BasicPath()  
    BasicPath​(BasicPath<N,​E> sample)  
  • Method Summary

    Modifier and Type Method Description
    BasicPath<N,​E> clear()
    Создает новый пустой путь
    BasicPath<N,​E> clone()
    Создание клона
    int count​(N n)
    Кол-во определенной вершины в пути
    java.util.List<E> edges​(int beginIndex, int endIndex)
    Получение ребер между указанными вершинами
    java.util.List<Edge<N,​E>> fetch​(int beginIndex, int endIndex)
    Получение ребер между указанными вершинами
    boolean has​(N a)
    Проверяет содержит ли путь вершину
    boolean hasCycles()
    Проверят путь на наличие циклов
    boolean isEmpty()
    Возвращает признак что путь пустой - не содержит вершин и ребер
    BasicPath<N,​E> join​(N n, E e)
    Создает новый путь с добавленным ребром в конце
    N node​(int nodeIndex)
    Возвращает вершину
    int nodeCount()
    Возвращает кол-во вершин в пути
    BasicPath<N,​E> start​(N n)
    Создает новый путь с начальной вершиной

    Methods inherited from class xyz.cofe.collection.graph.AbstractPath

    cycles, edge, segment

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • list

      protected final java.util.List<Edge<N,​E>> list
  • Constructor Details

  • Method Details

    • has

      public boolean has​(N a)
      Description copied from interface: Path
      Проверяет содержит ли путь вершину
      Parameters:
      a - вершина A
      Returns:
      true - вершина содержится в пути
    • edges

      public java.util.List<E> edges​(int beginIndex, int endIndex)
      Description copied from interface: Path
      Получение ребер между указанными вершинами
      Parameters:
      beginIndex - начальная вершина
      endIndex - конечная (исключительно) вершина
      Returns:
      список ребер
    • fetch

      public java.util.List<Edge<N,​E>> fetch​(int beginIndex, int endIndex)
      Description copied from interface: Path
      Получение ребер между указанными вершинами
      Parameters:
      beginIndex - начальная вершина
      endIndex - конечная (исключительно) вершина
      Returns:
      список ребер
    • start

      public BasicPath<N,​E> start​(N n)
      Description copied from interface: Path
      Создает новый путь с начальной вершиной
      Parameters:
      n - Начальная вершина
      Returns:
      новый путь
    • join

      public BasicPath<N,​E> join​(N n, E e)
      Description copied from interface: Path
      Создает новый путь с добавленным ребром в конце
      Parameters:
      n - Вершина
      e - Ребро/дуга
      Returns:
      новый путь
    • clone

      public BasicPath<N,​E> clone()
      Description copied from interface: Path
      Создание клона
      Specified by:
      clone in interface Path<N,​E>
      Specified by:
      clone in class AbstractPath<N,​E>
      Returns:
      клон
    • isEmpty

      public boolean isEmpty()
      Description copied from interface: Path
      Возвращает признак что путь пустой - не содержит вершин и ребер
      Returns:
      true - путь пустой
    • clear

      public BasicPath<N,​E> clear()
      Description copied from interface: Path
      Создает новый пустой путь
      Returns:
      путь
    • count

      public int count​(N n)
      Description copied from interface: Path
      Кол-во определенной вершины в пути
      Parameters:
      n - вершина
      Returns:
      кол-во
    • hasCycles

      public boolean hasCycles()
      Description copied from interface: Path
      Проверят путь на наличие циклов
      Returns:
      true - в пути присуствуют циклы
    • nodeCount

      public int nodeCount()
      Description copied from interface: Path
      Возвращает кол-во вершин в пути
      Returns:
      кол-во вершин
    • node

      public N node​(int nodeIndex)
      Description copied from interface: Path
      Возвращает вершину
      Parameters:
      nodeIndex - индекс вершины
      Returns:
      вершина