资源简介
c++实现的单链表数据结构,供大家学习数据结构与算法使用
代码片段和文件信息
#include
#include
#include
using namespace std;
#define MAXSIZE 30
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
using Statue = int;
using ElemType = int;
using pos = int;
struct Node
{
ElemType data;
Node *Next;
}Node;
using linkList =struct Node*;
Statue GetElem(linkList Lpos i ElemType *e)
{
pos j=1;
linkList p;
p =L->Next;
while (p && j {
p = p->Next;
++j;
}
if (!p || j>i)
{
return ERROR;
}
*e = p->data;
return OK;
}
void CreatListHead(linkList *L int n)
{
linkList p;
int i;
srand(time(0));
*L = (linkList)malloc(sizeof(Node));
//L = new linkList;
(*L)->Next = nullptr;
for (i = 0; i < n;++i)
{
p = (linkList)new struct Node;
p->data = rand() % 100 + 1;
p->Next = (*L)->Next;
(*L)->Next = p;
}
}
Statue ListInsert(linkList *L pos i ElemType e)
{
pos j=1;
linkList p=*Ls;
while (p && j {
p = p->Next;
++j;
}//p指向第i-1个节点
if (!p || j>i)
{
return ERROR;
}
s = (linkList)malloc(sizeof(Node));
s->data = e;
s->Next = p->Next;
p->Next = s;
return OK;
}
Statue LIstDelete(linkList *L pos i ElemType *e)
{
pos j = 1;
linkList p q;
p = *L;
while (p->Next && j {
p = p->Next;
++j;
}//p是第i-1个结点
if (!(p->Next) || j>i)
{
return ERROR;
}
q = p->Next;
*e = q
- 上一篇:带测试用例的平衡树算法
- 下一篇:大地坐标系和空间直角坐标系转换源代码
相关资源
- c++写的时间类
- c++网络编程之服务端
- c++实现的D算法的F算法
- c++三目运算符
- 谭浩强c++第二章习题源码
- 谭浩强c++课本第一章习题源代码
- 谭浩强c++课本第一章例题源码
- c++统计输入中每个值出现多少次
- c++实现的长方体类
- c++11多线程库之线程库使用
- c++11多线程库之互斥库使用
- 不用驱动直接获取硬盘信息 vc++
- 音频去噪C++代码,注释清晰可用
- C++读写excel类,封装的完整,可以直接
- knn算法实现C++
- 内存读写驱动的源码(C++)
- 用C++编写的坐标转换源码
- thinking in c++的课后习题答案
- 离散数学c++编程 传递闭包 公式的真值
- 殷人昆C++数据结构课后习题答案
- VC++中运算表达式字符串解析求值四则
- USB键盘驱动C++
- 贪吃蛇源码c++编写
- 地铁计费系统c++版的
- VC++实现客户端与服务器端的文件传输
- C++ AGV 路径规划仿真程序
- VC++网络考试系统,服务器+用户端+数
- C++api大全
- C C++ Linux多线程文件程序
- [c++中文化编程]之ComboBox组合框的类封
评论
共有 条评论