Status Listinsert_L(LinkList &L,int i,ElemType X)怎么使用
时间: 2024-06-16 10:04:16 浏览: 127
函数Status Listinsert_L(LinkList &L,int i,ElemType X)是一个链表插入操作的函数,它的作用是在链表L的第i个位置插入元素X。
具体使用方法如下:
1. 首先,需要创建一个链表L,并初始化为空链表。
2. 调用函数Listinsert_L(L, i, X),将元素X插入到链表L的第i个位置。
3. 函数会返回一个状态值,表示插入操作是否成功。如果成功插入,则返回OK;如果插入失败,则返回ERROR。
注意事项:
- 在调用函数之前,需要确保链表L已经被创建并初始化。
- 参数i表示要插入的位置,取值范围为1到链表长度加1。
- 参数X表示要插入的元素。
示例代码如下:
```
#include <iostream>
using namespace std;
typedef int ElemType;
typedef struct LNode {
ElemType data;
struct LNode *next;
} LNode, *LinkList;
// 在链表L的第i个位置插入元素X
Status Listinsert_L(LinkList &L, int i, ElemType X) {
if (i < 1) return ERROR; // 插入位置非法
LNode *p = L;
int j = 0;
while (p && j < i - 1) {
p = p->next;
j++;
}
if (!p || j > i - 1) return ERROR; // 插入位置非法
LNode *newNode = new LNode;
newNode->data = X;
newNode->next = p->next;
p->next = newNode;
return OK;
}
int main() {
LinkList L = NULL; // 创建一个空链表
int i = 3; // 插入位置
ElemType X = 10; // 要插入的元素
Status status = Listinsert_L(L, i, X);
if (status == OK) {
cout << "插入成功" << endl;
} else {
cout << "插入失败" << endl;
}
return 0;
}
```
阅读全文