org.jgrapht.alg.util

## Class VertexDegreeComparator<V,E>

- java.lang.Object
- - org.jgrapht.alg.util.VertexDegreeComparator<V,E>

- All Implemented Interfaces:
    Comparator<V>

      public class VertexDegreeComparator<V,E>
      extends Object
      implements Comparator<V>

  Compares two vertices based on their degree.

  Used by greedy algorithms that need to sort vertices by their degree. Two vertices are considered equal if their degrees are equal.

  Since:
    Nov 6, 2003
  Author:
    Linda Buisman

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `VertexDegreeComparator(UndirectedGraph<V,E> g)` Creates a comparator for comparing the degrees of vertices in the specified graph.
    `VertexDegreeComparator(UndirectedGraph<V,E> g, boolean ascendingOrder)` Creates a comparator for comparing the degrees of vertices in the specified graph.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `compare(V v1, V v2)` Compare the degrees of `v1` and `v2`, taking into account whether ascending or descending order is used.

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

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

    - ### Methods inherited from interface java.util.Comparator

      `equals`

- - ### Constructor Detail

    - #### VertexDegreeComparator

          public VertexDegreeComparator(UndirectedGraph<V,E> g)

      Creates a comparator for comparing the degrees of vertices in the specified graph. The comparator compares in ascending order of degrees (lowest first).
      Parameters:
        `g` - graph with respect to which the degree is calculated.

    - #### VertexDegreeComparator

          public VertexDegreeComparator(UndirectedGraph<V,E> g,
                                boolean ascendingOrder)

      Creates a comparator for comparing the degrees of vertices in the specified graph.
      Parameters:
        `g` - graph with respect to which the degree is calculated.
        `ascendingOrder` - true - compares in ascending order of degrees (lowest first), false - compares in descending order of degrees (highest first).

  - ### Method Detail

    - #### compare

          public int compare(V v1,
                    V v2)

      Compare the degrees of `v1` and `v2`, taking into account whether ascending or descending order is used.
      Specified by:
        `compare` in interface `Comparator<V>`
      Parameters:
        `v1` - the first vertex to be compared.
        `v2` - the second vertex to be compared.
      Returns:
        -1 if `v1` comes before `v2`, +1 if `v1` comes after `v2`, 0 if equal.

Copyright © 2016. All rights reserved.