Какой тип алгоритма я должен использовать?

Допустим, у меня есть четыре группы

A [ 0, 4, 9]

B [ 2, 6, 11]

C [ 3, 8, 13]

D [ 7, 12 ]

Теперь мне нужно одно число из каждой группы (т. Е. Новой группы) E [число A, число B, число C, число D], чтобы разница между максимальным числом в E и минимальным числом в E была возможно самое низкое. Какой тип проблемы это? Какой алгоритм графа будет лучше для решения этой проблемы? Заранее спасибо.

П.С .: Я пытаюсь решить эту проблему в Java и извините за неуказанный заголовок.

Редактировать : Наконец, я нашел то, что на самом деле ищуhttp://rcrezende.blogspot.in/2010/08/smallest-relevant-text-snippet-for.html

Ответы на вопрос(2)

Ваш ответ на вопрос