Как создать список ссылок (узлов) вне области видимости? C#

#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.