ds:单链表

写在前边:单链表:

1.带头结点的单链表:L头指针->头结点(data域不存数据元素,只指向下一个元素)->a1->a2->..->NULL

2.不带头结点的单链表:L头指针->a1->a2...->NULL

以上两种区别在于:无头结点的单链表在进行插入/删除元素时要对i=1的情况做特殊处理

 

一、带头结点的单链表基本操作

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
using namespace std;

typedef struct LNode
{
    int data;
    struct LNode *next;
}LNode,*LinkList;

bool init_LinkList_head(LinkList &L);
bool empty_LinkList_head(LinkList L);
bool insert_LinkList_head(LinkList &L,int i,int e);
bool insertNextNode_LinkList_head(LNode *p,int e);
bool insertPriorNode_LinkList_head(LNode *p,int e);
bool insertPriorNode2_LinkList_head(LNode *p,LNode *s);
bool delete_LinkList_head(LinkList &L,int i,int &e);
bool deleNode_LinkList_head(LNode *p);
LNode * getElem_LinkList_head(LinkList L,int i);
LNode * locateElem_LinkList_head(LinkList L,int e);
int length(LinkList L);
LinkList List_tailInsert_LinkList_head(LinkList &L);
LinkList List_headInsert_LinkList_head(LinkList &L);

 

posted @ 2023-05-01 21:16  _titleInfo  阅读(13)  评论(0编辑  收藏  举报
//雪花飘落效果