| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Создание пользовательских подсписков из ArrayList |
| Автор: PlatonS 10.9.2018, 17:43 |
| Здравствуйте, я новичок в Java, пытаюсь создать свою первую програмку. Создал главное и дополнительные (всплывающие окна), нашел, как считывать данные из JTextField и забивать их в ArrayList. Застрял на анализе этих данных: нужен алгоритм, который позволит, прежде всего, оценить значения, введенные в ArrayList и, в случае обнаружения совпадающих или близких значений (т.е. значений, которые не отличаются между собой более чем на 40, например 100 и 140), предложит разбить список на соответствующее число подсписков, в которых не будет близких значений. Например, если в списке изначально есть 20 значений, но два или три из них близки, то весь список нужно разделить на два-три подсписка, соответственно, и в каждый из подсписков должно войти только одно из близких значений, а остальные в произвольном, но лучше в возрастающем порядке (т.е. если список делим надвое, то в первом подсписке должно оказаться одно из близких значений (например число 100) + еще 9 значений из первой десятки, а во втором подсписке – второе из близких значений (число 140) + еще 9 значений из второй десятки). Во-вторых: нужно сделать так, чтобы сформированные подсписки можно было дополнять новыми значениями из еще одного ArrayList2 и повторно проверять на наличие близких значений. Но в этом случае уже не нужно делить подсписки еще раз, а просто выдавать результат с предупреждением, что «есть близкие или совпадающие значения». Я так понимаю, что в моем случае, прежде всего, нужно создать пользовательский Comparator, но я никогда их не создавал, а все найденные мною примеры из Интернета почему-то для вариантов (String). |