1.定义
1.1 单向链表
单向链表只包括:数据域 value 和指针域 *next
A.数据域:用于存储数据的元素值;
B.指针域:用于下一个节点的地址;
struct ListNode
{
int value;
ListNode *next;
}
1.2双向链表
双向链表只包括:数据域 value ,左指针域和右指针域
A.数据域:用于存储数据的元素值;
B.左指针域:用于上一个节点的地址;
C.右指针域:用于下一个节点的地址;
struct ListNode
{
int value;
ListNode *Lnext;
ListNode *Rnext;
}
2.创建,插入,删除,遍历
2.1创建
void CreateList(ListNode* pHead)
{
ListNode* p = pHead; //
for(int i= 0;i<10;i++)
{
ListNode* pNewNode = new ListNode;
pNewNode->value = i;
pNewNode->next = NULL;
p->next = pNewNode;
p = pNewNode;
}
cout<<"创建完成!"&