顺序表的习题

一、题目

题目:实现顺序表各种基本运算的算法
要求:
1、建立一个顺序表,输入n个元素并输出;
2、查找线性表中的最大元素并输出;
3、在线性表的第i个元素前插入一个正整数x;
4、删除线性表中的第j个元素;
5、将线性表中的元素按升序排列;
6、将线性表中的元素就地逆序(只允许用一个暂存单元);

二、源代码

为了方便大家食用,直接讲代码放出来,大家可以直接复制去运行的试一下。

#define _CRT_SECURE_NO_WARNINGS 1 
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
typedef int SLType;
typedef struct seqlist
{
   
	SLType* a;
	int size;
	int capicity;
}SL;
SL sl;
//线性表的初始化
void SLinit(SL* ps)
{
   
	assert(ps);

	ps->a = NULL;
	ps->capicity = ps->size = 0;
}
//开辟空间
void SLcapicity(SL* ps)
{
   
	assert(ps);

	if (ps->size == ps->capicity)
	{
   
		int newcapicity = ps->capicity == 0 ? 4 : ps->capicity * 2;
		int* tmp = (int*)realloc(ps->a, newcapicity * sizeof(SLType));
		if (tmp == NULL)
		{
   
			printf("realloc fail\n");
			exit(-1);
		}
		ps->a = tmp;
		ps->capicity 
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无敌浩克 .

感谢您对浩克的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值