Package edu.claflin.finder.algo

# Class BreadthFirstTraversalSearch

java.lang.Object
edu.claflin.finder.algo.Algorithm
edu.claflin.finder.algo.BreadthFirstTraversalSearch

All Implemented Interfaces:
  `Processable<Graph,Graph>`

public class BreadthFirstTraversalSearch extends Algorithm
Processes a `Graph` searching for subgraphs by performing a breadth first search on each node of the graph.

Version:
  3.4 February 4, 2016
Author:
  Charles Allen Schultz II

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class edu.claflin.finder.algo.Algorithm

  `Algorithm.GraphSortOrder`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `private Comparator<Edge>`
  `comparator`

  ### Fields inherited from class edu.claflin.finder.algo.Algorithm

  `args, PROP_PROGRESS`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BreadthFirstTraversalSearch(ArgumentsBundle bundle)`
  Public constructor for initializing the BreadthFirstTraversalSearch with default conditions.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ArrayList<Graph>`
  `process(Graph graph)`
  Processes data.
  `private Graph`
  `searchNode(Graph graph, Node node)`
  Helper method to search for the SubGraphs in Breadth First Search.
  `private void`
  `setComparator()`
  `String`
  `toString()`

  ### Methods inherited from class edu.claflin.finder.algo.Algorithm

  `addPropertyChangeListener, cull, getGraphSortOrder, getMinNodeCount, getPartiteNumber, getWeightName, removePropertyChangeListener, setGraphSortOrder, setMinNodeCount, setPartiteNumber, setProgress, setWeightName, zeropad`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### comparator

    private Comparator<Edge> comparator

- ## Constructor Details

  - ### BreadthFirstTraversalSearch

    public BreadthFirstTraversalSearch(ArgumentsBundle bundle)
    Public constructor for initializing the BreadthFirstTraversalSearch with default conditions.
    Parameters:
      `bundle` - the ArgumentsBundle containing the instantiation arguments.

- ## Method Details

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### process

    public ArrayList<Graph> process(Graph graph)
    Processes data.
    Finds most Subgraphs by performing a breadth first search on the node tree. It is unknown if it finds all or only most of the subgraphs due to the nature of the algorithm. It is expected, however, that it would miss certain node groupings.
    Parameters:
      `graph` - the `Graph` object to search through.
    Returns:
      the Graph array holding all found subgraphs.

  - ### searchNode

    private Graph searchNode(Graph graph, Node node)
    Helper method to search for the SubGraphs in Breadth First Search. Creates and manages a queue of nodes to search through. Is called on each node in the tree.
    Parameters:
      `graph` - the Graph object to search through.
      `node` - the node to use as the root.
    Returns:
      the Graph object representing the found subgraph.

  - ### setComparator

    private void setComparator()