#c# #hint
Вопрос:
Мне трудно понять, как преобразовать число в связанный список, или, по крайней мере, я просто не понимаю, как они сохраняются вне функции, в которой они были созданы. Проблема заключается в проблеме литкода № 2 в C#.
Проблема в том, что :
Вам предоставляются два непустых связанных списка, представляющих два неотрицательных целых числа. Цифры хранятся в обратном порядке, и каждый из их узлов содержит одну цифру. Добавьте два числа и верните сумму в виде связанного списка. Вы можете предположить, что эти два числа не содержат никакого начального нуля, кроме самого числа 0.
Настройка такова :
// Definition for singly-linked list.
public class ListNode {
public int val;
public ListNode next;
public ListNode(int val=0, ListNode next=null) {
this.val = val;
this.next = next;
}
}
public class Solution {
public ListNode AddTwoNumbers(ListNode l1, ListNode l2) {
}
}
Мое решение включает в себя длительное преобразование связанного списка в целое число, а затем сложение двух целых чисел вместе.
Но мне трудно понять, как я должен return the sum as a linked list
это делать . В частности, мне трудно понять, как связанный список будет существовать вне AddTwoNumbers
и как именно я создаю сами списки?
Например, первое приглашение предназначено для {2, 4, 3} и {5, 6, 4}, равное 708, затем отменено до 807.
Я не понимаю, как действовать после получения 807 в виде целого числа. В частности, нужно ли мне выяснить, сколько списков адресов мне нужно сначала инициализировать? Или как все списки будут существовать вне функции, в которой они созданы (область действия)?
Спасибо вам за любое понимание этой проблемы и за ваше время.
Комментарии:
1. Просто подсказка: вам не нужно ничего конвертировать. Подумайте, как бы вы выполнили сложение на бумаге и как это связано с наличием чисел в виде связанных списков. Если вы не знаете, как создать экземпляр объекта или вернуть его, вам нужно будет обратиться к учебнику по C#
2. Развивая намек. Если в списках хранятся цифры в обратном порядке, то первый элемент в каждом списке представляет единицы , второй- десятки и так далее. Если первый элемент в одном списке равен 5, а первый в другом списке равен 7, 5 7 равно 2, перенесите 1, поэтому первый элемент в списке результатов должен быть 2.