Цель программы - создать два двусвязных списка, прочитать числа из файла и сложить их вместе, создать новый двусвязный список и распечатать результат. Запустив его, я получаю сообщение об ошибке: Java lang out of memory: java Ошибка пространства кучи
Я относительно новичок в структурах данных и кодировании и не могу понять, что является причиной этой ошибки. Сейчас думаю, что это где-то в моем l oop, создавая дополнительные узлы в бесконечном l oop. (Включено l oop с ошибкой, не полный код).
int sum = 0;
Digit endHead = new Digit(); //summed linked list
Digit endCurr = endHead;
Digit endPrev = endHead;
while (true)
{
if (currOne == null && currTwo == null) //ex. at the end of addition carrying the last number.
{
sum = sum;
}
else if (currOne == null)
{
sum = currTwo.value + sum;
}
else if (currTwo == null)
{
sum = currOne.value + sum;
}
else
{
sum = currOne.value + currTwo.value + sum;
}
endCurr.value = sum % 10; //to get the number to carry over
sum = sum / 10; //to get the ones place
if (currOne == null && currTwo == null && sum == 0)
{
break;
}
else
{
endCurr.next = new Digit();
endCurr = endCurr.next;
endCurr.prev = endPrev;
endPrev = endCurr;
}
}