| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [Java] Алгоритм двухпутевого слияния |
| Автор: zodd 13.10.2010, 21:50 | ||
| Добрый вечер. Есть 2 файла, со строками произвольной длинны. Нужно отсортировать строки, а после, используя двухпутевое слияние, записать в третий файл одну строку. Ошибка в условии, в алгоритме слияния, с размерностью массива (выбивает эксепшн), когда строки одинаковой длинны. Алгоритм с книги Седжвика. Помогите, написать корректно. Заранее спасибо. А вот мой код.
--------------------------- Спасибо большое! Весь день дебажил, а ошибка похоже была в знаке сравнения. |
| Автор: JAPH 14.10.2010, 20:42 | ||
| При обращении к массиву cArr1 корректны индексы 0 .. cArr1.length - 1. Следовательно, в условиях if необходимо ставить >= вместо >. Далее, где создается res? По логике это локальный массив. И длина его равна просто сумме cArr1.length + cArr2.length. И сверху ограничить k легче res.length.
На будущее - лучше приводить Exception полностью и дословно, на английском |