Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Fedor N
0 / 0 / 0
Регистрация: 22.06.2012
Сообщений: 17
#1

Шаблон класса Node для узла связного списка - C++

23.06.2012, 11:18. Просмотров 1083. Ответов 3
Метки нет (Все метки)

Здравствуйте, помогите пожалуйста реализовать и протестируйте функцию:
template <class T>
Node<T> *GetNode(const T &item, Node<T> *nextPtr = NULL);
создающую в динамической памяти узел-объект класса Node с данным item и указателем на следующий узел nextPtr.

nodelib.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
template <class T>
class Node
{
    private:
        // указатель на адрес следующего узла
        Node<T> *next;
    public:
        T data;
        //конструктор
        Node(const T& item, Node<T> *ptrnext = NULL):
                    data(item), next(ptrnext) {return;}
        // Вставка следующим
        void InsertAfter(Node<T> *p)
        {
            p->next = next;
            next = p;
        }
        // Удаление следующего
        Node<T> *DeleteAfter(void);
        // Получение адреса следующего
        Node<T> *NextNode(void) const {return next;}
};
 
template <class T>
Node<T>* Node<T>::DeleteAfter(void)
{
    // если нет следующего возвратить NULL
    if (next==NULL) return NULL;
    // сохранить адрес удаляемого узла
    Node<T> *tempPtr = next;
    // текущий указывает на узел, следующий за удаляемым
    next = tempPtr->next;
    // возвратить указатель на удаляемый узел
    return tempPtr;
}
 
template <class T>
void PrintNodeList(Node<T> * head)
{
   if (!head) {cout <<"\nList empty"; return;}
   cout << '\n';
   while (head)
   {
    cout << head->data << '\t';
      head = head->NextNode();
   }
}
 
template <class T>
Node<T> *BuildNodeList(T M[], int n)
{
    Node<T> *head=NULL;
   for (int i = n-1; i>=0; i--)
    head= new Node<T>(M[i],head);
   return head;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.06.2012, 11:18     Шаблон класса Node для узла связного списка
Посмотрите здесь:

C++ Реализация связного списка
C++ Реализовать шаблон класса для хранения динамического списка
функция для нахождения длины связного списка C++
Сортировка связного списка C++
C++ сортировка связного списка
C++ Реализация связного списка
C++ Разработать шаблон класса для реализации односвязного списка
C++ Разработать шаблон класса для работы со стеком реализованным в виде связного списка
C++ Напишите шаблон класса односвязного списка, который принимает элементы любого типа
Спроектировать шаблон класса spisok для реализации односвязного линейного списка. Не работает сортировка C++
Шаблон класса двусвязного списка, метод, возвращающий указатель C++
C++ Шаблон для узла односвязного списка

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
neske
1463 / 830 / 69
Регистрация: 26.03.2010
Сообщений: 2,830
23.06.2012, 11:20     Шаблон класса Node для узла связного списка #2
del del
Invader_Zim
Twilight Parasite
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
23.06.2012, 12:20     Шаблон класса Node для узла связного списка #3
используй list и не парься
Fedor N
0 / 0 / 0
Регистрация: 22.06.2012
Сообщений: 17
23.06.2012, 17:36  [ТС]     Шаблон класса Node для узла связного списка #4
Все сделал. Тема закрыта.
Yandex
Объявления
23.06.2012, 17:36     Шаблон класса Node для узла связного списка
Ответ Создать тему
Опции темы

Текущее время: 00:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru