Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.01.2015, 16:41   #1
polant
 
Регистрация: 07.01.2015
Сообщений: 8
По умолчанию Задача на связанный список C#

Уважаемые форумчане! Пытаюсь разобраться со связанными списками в C#, но немного застрял. Помогите пожалуйста хоть с одной из задач, буду очень благодарен за помощь!

1. Даны классы E и List - связанный список.
Код:
class E
    {
        public string Name;
        public E Next;
    }
    class List
    {
        public E Head;
    }
Объявить конструктор класса List - public List(string[] m) { }, который создает связанный список из массива
В голове связанного списка должен быть последний элемент массива.


2. Объявлен класс
Код:
class Item
{
    public string Info;
    public Item Next;
}
и класс 
class List
{
    public Item Head;
}
Объявить открытый метод AddToBack(string info) класса List, который добавляет элемент в конец связанного списка

Последний раз редактировалось polant; 07.01.2015 в 17:15.
polant вне форума Ответить с цитированием
Старый 07.01.2015, 17:12   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вопрос влоб-полбу: Это всетки Шарпей, почему не использовать имеющиеся в нем классы для списков?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.01.2015, 17:17   #3
polant
 
Регистрация: 07.01.2015
Сообщений: 8
По умолчанию

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

Последний раз редактировалось polant; 07.01.2015 в 18:26.
polant вне форума Ответить с цитированием
Старый 09.01.2015, 14:30   #4
polant
 
Регистрация: 07.01.2015
Сообщений: 8
По умолчанию

Если кому-то интересно решение, то вот - первую задачу решил:
Код:
public List(string[] m)
{ 
  foreach (var x in m)
  {
   E t = new E();
   t.Next = Head;
   t.Name = x;
   Head = t;
  }
}
А вторую пока еще нет
polant вне форума Ответить с цитированием
Старый 16.10.2022, 20:11   #5
sabio85
Новичок
Джуниор
 
Регистрация: 16.10.2022
Сообщений: 2
По умолчанию

В простейшем варианте:

class Item
{
public string Info;
public Item Next;
}

class List
{
public Item Head;

public void AddToBack(string info)
{
var head = Head;
while(head.next != null)
{
head = head.next;
}

var newItem = new Item(){ Info = info; Next = null};
head.next = newItem;
}
}
sabio85 вне форума Ответить с цитированием
Старый 16.10.2022, 20:12   #6
sabio85
Новичок
Джуниор
 
Регистрация: 16.10.2022
Сообщений: 2
По умолчанию Отформатировано

Код:
class Item
{
    public string Info;
    public Item Next;
}

class List
{
    public Item Head;

    public void AddToBack(string info)
    {
        var head = Head;
        
        while(head.next != null)
        {
            head = head.next;
        }

        var newItem = new Item(){ Info = info; Next = null};
        head.next = newItem;
    }
}
sabio85 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связанный список с автоподстановкой akovalev Microsoft Office Excel 0 07.04.2014 23:53
Связанный список. Gtnz8 Общие вопросы C/C++ 3 21.09.2013 13:23
связанный список leonid_v Помощь студентам 33 25.01.2013 12:45
Связанный список Лжец Общие вопросы C/C++ 2 12.12.2011 23:42
Связанный список на СИ maryan.vetrov Общие вопросы C/C++ 6 18.10.2010 08:49