Существует бесплатный Java-API под названием JFreeWebSearch, который использует уже упомянутый Faroo: http://www.ke.tu-darmstadt.de/resources/jfreewebsearch
Если вы посмотрите на сигнатуру Comparator.comparing
, то общий параметр U
extends Comparable<? super U>
public static <T, U extends Comparable<? super U>> Comparator<T> comparing(
Function<? super T, ? extends U> keyExtractor)
, который означает, что все, что возвращает getElement
, должно быть Comparable
.
Примечание: здесь тип T
- это вершина, а U
- это тип того, что возвращает getElement
.
Это можно решить, сделав T
extends Comparable<? super T>
в классе Vertex.
class Vertex<T extends Comparable<? super T>> {...}