//线性表顺序存储
#include<iostream>
#include<stdlib.h>
#include<stdio.h>
using namespace std;
#define OK 1
#define ERROR 0
//线性表的单链表存储结构
typedef struct Node
{
int data;
struct Node* next;
}Node;
typedef struct Node* LinkList;//定义LinkList
//查找操作
//操作结果:用e返回l中第i个数据元素的值
int GetElem(LinkList L, int i, int* e)
{
LinkList p;//声明一个结点p
p = L->next;//让p指向链表L的第一个结点
int j = 1;//j为计数器
while (p && j < i)//p不为空或者计数器j还没有等于i时,循环继续
{
p = p->next;//让p指向下一个结点
++j;
}
if (!p || j > i)//找到了第i个元素,但是第i个元素不存在
return ERROR;
*e = p->data;//取第i个元素的数据
return OK;
}
线性表链式存储操作(未定稿)
最新推荐文章于 2024-07-20 11:22:21 发布