/***************************************************************************
- author :[email protected]
- data :2024/04/22
- function :删除顺序表工中下标为p(0<p<length-1)的元素,成功返回1,否则返回0,并将被删除元素的值赋给e。
- noto :None
- CopyRight (c) 2023-2024 [email protected] A1l Right Reseverd
****************************************************************************/
include <stdio.h>
/****************************************
*
- 函数名称: MaxNumber
- 函数功能: 删除顺序表工中下标为p(0<p<length-1)的元素,成功返回1,否则返回0,并将被删除元素的值赋给e。
- 函数参数:
-
@*L :地址
-
@int p :下标
- 返回结果:
- 注意事项: None
- 函数作者: [email protected]
- 创建日期: 2024/04/22
- 修改历史:
- 函数版本: V1.0
****************************************/
删除顺序表工中下标为p(0<p<length-1)的元素,成功返回1,否则返回0,并将被删除元素的值赋给e。
int SeqList_Remove(*L,int p)
{
//判断顺序表的地址是否有效
if( NULL == L)
{
return 0;
}
//变量e,记录待删除元素的值
int e = 0;
//把待删别除元素的值备份到变量e中
e = L[p];
//把待删除元素的后继元素向前移动一个单位
for (int i = p;i < length;++i)
{
L[i] = L[i+1];
}
return 1;
}
已知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x(x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)。
/**************************************************
*
- 函数名称: SeqList_Insert
- 函数功能: 已知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x(x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)。
- 函数参数:
-
@SeqList *L :顺序表结构的指针
-
@int x :插入的数据
- 返回结果:
- 注意事项: None
- 函数作者: [email protected]
- 创建日期: 2024/04/22
- 修改历史:
- 函数版本: V1.0
**************************************************/
void SeqList_Insert(SeqList *L,int x)
{
//记录待插入元素的下标
int temp = -1;
//遍历顺序表,找到插入位置,比较元素
for (int i = 0;i <= last;++i)
{
if (x < L[i])
{
temp = i;
break;
}
}
// 如果 temp 仍然是 -1,说明 x 是顺序表中的最小值
if(-1 =temp)
{
L[1ast+1] = ×;// 在顺序表的末尾插入 x
return;
}
//把待插入位置的后继元素向后移动
for (int i = last;i >= temp;i--)
{
L[i+1]=L[i];
}
L[temp] = x;
}
标签:顺序,下标,int,SeqList,元素,插入
From: https://www.cnblogs.com/CamelliaWY/p/18151621