- 链表:一种链式存储的线性表,用一组地址任意的存储单元存放线性表的数据元素,称存储单元为一个结点
本篇文章是单链表的实现
代码实现:
头文件 ListNode.h
#define _CRT_SECURE_NO_WARNINGS 1
#pragma once
#include<stdio.h>
#include<assert.h>
#include<malloc.h>
typedef int DataType;
typedef struct Node
{
struct Node* _pNext;//指向链表的下一个结点
DataType _data;//当前结点中所保存的元素
}Node,*PNode;
void SListInit(PNode* pHead);//初始化单链表
void SListPushBack(PNode* pHead, DataType data);//尾插
void SListPopBack(PNode* pHead);//尾删
void SListPushFront(PNode* pHead, DataType data);//头插
void SListPopFront(PNode* pHead);//头删
PNode SListFind(PNode pHead, DataType data);//查找数据
void SListInsert(PNode* pHead, PNode pos, DataType data);//任意位置插入
void SListErase(PNode* pHead, PNode pos);//任意位置删除
void SListDestroy(PNode* pHead);//销毁
int SListSize(PNode pHead);//元素个数
void SListClear(PNode* pHead);//清空
PNode BuySListNode(DataType data);//建立结点
PNode SListBack(PNo