StackOverflowers.
Я довольно новичок в этом сайте и подумал, что было бы разумно прийти сюда за некоторой помощью в отношении конкретной проблемы, которая включает печать правильного вывода из связанного списка.Идея состояла в том, чтобы взять программу, которая использовала массив, чтобы сгенерировать список и преобразовать его в связанный список, достигая того же результата.Теперь я занимаюсь этим часами, и хотя я дошел до того, что вывод фактически распечатывается (наконец), требуемый результат не был получен.
Требуется результат:Примечание: этот результат получен с использованием массива
Слово: этот счет: 2Слово: количество курсов: 2Слово: экзаменов кол: 1Слово: количество: 7Слово: количество строительства: 1Слово: Количество: 9Слово: количество алгоритмов: 4Слово: и количество: 9
Результат, который я получаю:Примечание. Этот результат получается при преобразовании подхода массива в связанный список.
Слово: количество верований: 2Слово: мой счет: 2Слово: Количество: 2Слово: лучший счет: 2Слово: количество: 2Слово: считать: 2Слово: считаются: 2Слово: количество фактов: 2Слово: количество: 2
Я не совсем уверен, почему это так, и я не могу отследить это.Я пытался перечитать свои заметки и поиск, но безрезультатно.Я не уверен, имеет ли это какое-то отношение к setNext (...) [часть класса Node] или где я вызываю метод incrementCount () [часть класса Word].Я не верю, что setNext (...) даже имеет цель, но является лишь частью кода и вообще ничего не делает на этом этапе.
Я надеюсь, что моя доставка не в русле и чторешение может быть предоставлено для моей попытки.Я знаю, что достиг своего предела, потому что я не могу думать ни о чем другом.
Жду ваших предложений.
Спасибо.
T3.
private Node top;
public WordList()
{
top = null;
}
// This method adds words to the linked list.
public void addWord( String w )
{
Word word = new Word( w );
top = new Node(word,top);
// Checks to see if a particular word is present more than once.
// If the particular word is encountered more than once, it
// increments the word count for that particular word, else
// a new node is created to store another word. The word check
// process is repeated once more.
// Note: getWord() is part of the Node class that attempts to retrieve
// a word that is held in a particular node.
// matchesWord(...) determines whether a particular word (string) has been
// encountered. If result is true, the number of times
// the word is encountered should be incremented.
if( top.getWord().matchesWord( w ))
{
top.getWord().incrementCount();
}
else
{
Word newWord = new Word ( w );
Node newNode = new Node(newWord, top);
//top = newNode;
top.setNext(newNode);
}
} // end addWord
// This method prints out the linked list.
public void printList()
{
Node currentNode;
currentNode = top.getNext();
while(currentNode != null)
{
System.out.println(currentNode.getWord());
currentNode = currentNode.getNext();
}
}