数据结构 顺序表—插入 删除 最大值

考研笔记 数据结构代码

本人小白一个,考研的科目是数据结构 就用此博客来记录练习的代码。借鉴了别人的很多地方和天勤书上的内容。

顺序表

构建一个顺序表 实现以一下功能
1.找出最大值
2.插入一个元素
3.删除一个元素

#include
#include
#define maxSize 100
#define ERROR 0;
using namespace std;

typedef struct{     			//构建结构体
	int data[maxSize]; 		//静态数组存放数据
	int length; 			//长度
}Sqlist;
/* 创建顺序表*/
void creatSqlist(Sqlist *list)
{
	cout << "输入元素" ;
	for(i = 0; i < list->length; i++)
	{
		cin >> list->length[i];
	}
}	
//打印
void printSqlist(splist *list)
{
	cout << "顺序表为:";
	for(i = 0; i < list->length; i++)
	{
		cout << list->data[i] << " "//将数据域中的值输出 
	}
}

//查找最大值
int FindMax(Sqlist list)
{
	int max = list.data[0];    //让max指向数组中第一个数据域
	for(i = 1; i < list.length; i++)   //扫描整个顺序表
	{
		if(max < list.data[i]){
			max = list.data[i];
		}
	}
	return max;
}
/*插入一个元素
要先判断能否插入*/
void InsertElem(Sqlist *list, int p ,int e)  //插入元素后表发生改变所以要引用
{	
	int i;
	if(p > list->length || p < 0)
	{
		cout << "error";
		return 0;
	}
	for(i = list->length; i <= p; --i)
	{
		list->data[i+1] = list->data[i];
		list->data[p] = e;
		++list.length;
	} 
}	

//删除一个元素
void DeleteElem(Sqlist *list, int p, int e)
{		
		if(p < 0 || p > length)     //判断条件
            return 0;
        for(int i =p, i <= length-1, ++i)
        {
            list->data[i] = list->data[i+1];
        }
            list.length--;
            printSqlist(list);
}

`

你可能感兴趣的:(数据结构,顺序表,数据结构)