-
Notifications
You must be signed in to change notification settings - Fork 0
/
ListNode.h
32 lines (27 loc) · 1.38 KB
/
ListNode.h
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
#pragma once
namespace luzinsan
{
class ListNode
{
private:
int l_info; // информационное поле
ListNode* l_next; // ссылка на следующий элемент списка
static ListNode* BeginList; // указатель на начало кольцевого списка
public:
ListNode*& getBeginList();
ListNode*& getNext();
ListNode(); // инициализация списка - первого фиктивного элемента
// Вставка нового элемента списка после текущего, либо вставка первого элемента в начало
ListNode* InsertNode(ListNode*& p, int i);
//Удаление следующего элемента после текущего
int DeleteNode(ListNode* p);
// Печать элементов списка
ListNode* PrintList(ListNode* p);
/*
* Функция, которая вычитает из элемента списка (если он больше нуля) следующий элемент списка,
* и которая складывает с элементом списка (если он меньше нуля) следующий элемент списка
*/
ListNode* Rationing(ListNode* p);
ListNode* Dispose(); // уничтожение списка
};
}