Я не могу напечатать элементы связанного списка в обратном порядке, используя рекурсию

Я работал, используя следующее:

string IP = Request.UserHostName;
string compName = CompNameHelper.DetermineCompName(IP);

код из compnamehelper:

public static string DetermineCompName(string IP)
{
    IPAddress myIP = IPAddress.Parse(IP);
    IPHostEntry GetIPHost = Dns.GetHostEntry(myIP);
    List<string> compName = GetIPHost.HostName.ToString().Split('.').ToList();
    return compName.First();
}
0
задан Chirag 13 July 2018 в 13:43
поделиться

2 ответа

Глядя на ваш код, я не думаю, что в вашем обратном методе есть что-то не так. Это фактически печать в обратном порядке. То, что вас выбрасывает, вероятно, связано с тем, как вы вставляете элементы. Ваш метод insert () фактически представляет собой стек. (Он вставляет вверх). Таким образом, после всех вставок головные точки равны 52, а не 78. Поэтому, когда вы печатаете, обратный список печатается как:

78 30 52

Кроме того, ваш код нуждается в некотором форматировании и должен следовать соглашениям java. Имена методов начинаются с нижнего регистра и имен классов с прописными буквами. Удачи:)

3
ответ дан Gautam 17 August 2018 в 12:52
поделиться
  • 1
    Благодарю вас, Гаутам. Я получил его. – Ganesh Chowdhary Sadanala 13 July 2018 в 14:57

В вашем LinkedList вместо использования метода insert, который добавляет элемент в голове, используйте метод append, который добавляет элемент в конец LinkedList, а затем вызывает обратный метод.

1
ответ дан Karan Khanna 17 August 2018 в 12:52
поделиться
  • 1
    спасибо :). Счастливое кодирование !! – Ganesh Chowdhary Sadanala 13 July 2018 в 14:59
Другие вопросы по тегам:

Похожие вопросы: