Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Объединение двух списков

440
16 ноября 2009 года
[FENIX]
83 / / 29.01.2007
В общем мне нужно объединить два односвязный нециклических списка.
Есть форма, на ней 3 элемента управления dataGrid, и текстовое поле. 1-й и 2-й dataGrid заполняю любыми числами. В текстовое поле ввожу позицию для вставки, и массивы должны объединиться.

Пример:
Первый список состоит из элементов 1, 2, 3, 4, 5, 6, 7.
Второй список состоит из элементов 10, 20, 30.
В результате вставки копий элементов второго списка в первый список
на 4-ую позицию, первый список примет вид 1, 2, 3, 10, 20, 30, 4, 5, 6, 7.
Второй список не изменится.

У меня уже есть этот готовый метод вставки, но вот с вызовом не получается, помогите пожалуйста с вызовом, кто может, или подскажите как метод переписать:

Код:
public void Concate(SingleLinkedList L, Node P)//P - узел, за которым идёт вставка
        {
 
            //SingleLinkedList - класс, описывающий список
            //Node - класс, описывающий узел этого списка
            Node Q = first;
            Node last = L.first;
 
 
            if (first == null)
                first = L.first;//Если 1-й список пуст -> результат ->2-й список
            else
            {
                if (P != null)
                {
                    while (Q.Link != P.Link)
                    {
                        Q = Q.Link;
                    }
 
                    while (last.Link != null)
                        last = last.Link;
 
                    last.Link = P.Link;
                    P.Link = L.first;
 
                    //У 2-го списка ищем последний элемент;
                    //Полю связи последнего эл-та 2-го списка присваиваем значение P.Link
                    //Далее P.Link=L.first;
                }
            }
           
        }
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог