数据结构 顺序表常见算法问题

本文探讨数据结构中顺序表的相关算法,包括删除最小值元素、元素逆置、按值删除、删除指定范围元素、去重以及两顺序表互换位置。算法分析强调效率和空间复杂度。
摘要由CSDN通过智能技术生成

数据结构,线性表,顺序表常见算法

算法和问题来自于试卷,辅导书,以及网络。

//顺序表的一般数据结构
typedef struct{
    int data[Maxsize];
    int length;
}SqList;

算法2.1.1

从顺序表中删除具有最小值的元素,并由函数返回被删元素值。空出位置由最后一个补齐

分析:算法很简单,基本思想可参照简单选择排序思想

int deleteMin(Sqlist &L, int &e)
{
   
    int i,j;
	if(L.length==0) return 0;
	min=L.data[0];
	for(i=1;i<L.length;i++)
	{
   
	   if(L[i]<min)
	   {
   
	   		j=i;
	   		e=L[i];
	   }
	}
	L.data[j]=L[L.length-1];
	--L.length;
	return e;
}

算法2.1.2

将顺序表L所有元素逆置

分析:算法很简单,用两个指针,一个用于替换的变量即可,从两头到中间进行替换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值