Обратный порядок строк символов и поместите их в LinkedList с помощью конструктора - PullRequest
0 голосов
/ 07 марта 2019

Я делаю программу, которая берет строку и помещает ее в обратном порядке в LinkedList.

Кажется, этот код не работает (неправильный ввод), и я не могу понять, почему,Какие-нибудь решения?

public LargeInteger(String input) 
{
     TODO
    size=size+input.length();
    LLNode<Integer> curNode=new LLNode<Integer>();
    for(int curPos=input.length()-1;curPos>=0;curPos--)
    {
        if(curPos==input.length()-1)
        {
            head=new LLNode<Integer>();
            head.data=input.charAt(curPos)+'0';
            curNode=head;
        }
        else
        {
            curNode.link=new LLNode<Integer>();
            curNode=curNode.link;
            curNode.data=input.charAt(curPos)+'0';
        }
    }
}

1 Ответ

0 голосов
/ 07 марта 2019

Добро пожаловать в переполнение стека.

Как насчет использования методов интерфейса List и класса String, а не только для циклов? Проверьте этот пример:

String phrase = "this is the phrase"; // this is the input
List<String> list = new LinkedList<>();

// iterates the input in decreasing index order
for(int i=phrase.length()-1; i >= 0; i--) { 
    // gets the character from the input and add to the LinkedList
    list.add(Character.toString(phrase.charAt(i))); 
}

Если вы не хотите добавлять пробелы, добавьте if(isEmpty(phrase.charAt(i))) continue; перед добавлением символа.

Живой пример здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...