longestPaths method

List<List<Node<T>>> longestPaths()

Returns the longest paths.

Implementation

List<List<Node<T>>> longestPaths() {
  if (isEmpty) return [];

  var sorted = sortedPathsByLength();

  var max = sorted.last.length;

  var idx = sorted.indexWhere((p) => p.length < max);

  if (idx < 0) {
    return sorted;
  } else {
    var longest = sorted.sublist(idx + 1);
    return longest;
  }
}