一、前言
哈喽,大家好~我是熊子q,我又来了!
他来了他来了,他带着代码过来了!
今天要分享的代码是链表!快快搬着小板凳!
二、代码
严奶奶的书中预定义了一些预定义常量和类型,大家可以 新建一个y.h文件粘贴以下内容, 然后再去复制代码哦。
y.h文件内容:
/**
* 严奶奶书中的预定义常量和类型
**/
//函数结果状态代码
#define TRUE 1 //成功
#define FALSE 0 //失败
#define OK 1 //成功
#define ERROR 0 //错误
#define INFEASIBLE -1 //不可实行
#define OVERFLOW -2 //溢出
//Status 是函数的类型,其值是函数结果状态代码
typedef int Status;
链表LinkList.cpp:
#include "y.h"
#include <iostream>
#include <cstdlib>
#include <cstdio>
using namespace std;
typedef int ElemType;
/**
* 严奶奶单链表的实现
* by 熊子q 2021.2.1
**/
typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
//获取元素
Status GetElem(LinkList L, int i, ElemType &e){
//L为带头结点的单链表的头指针
//当第i个元素存在时,其值赋给e并返回OK,否则返回ERROR
LNode *p = L->next; //p指向第一个结点
int j = 1; //j为计数器
while(p && j<i){
//寻找第i个位置
p = p-