⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linear1.cpp

📁 数据结构测试程序
💻 CPP
字号:
// linear1.cpp: implementation of the linear class.
//
//////////////////////////////////////////////////////////////////////

#include "linear1.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
void linear::initiate()//初始化线性表
{
	elem[0]=0;
}

int linear::length()//线性表长度
{
	return elem[0];
}


linear::linear()//构造函数
{

}

linear::~linear()//虚构函数
{

}

elemtpl linear::get(int i)//得到线性表第i个数
{
	if (i<=elem[0]&&i>=0) return elem[i];
	return -1;
}

elemtpl linear::prior(elemtpl elm)//前驱
{								//未查到则返回-1
	int i=locate(elm);
	if (i>1&&i<=elem[0])return elem[i-1];
	else return -1;
}

elemtpl linear::next(elemtpl elm)//后继
{								//未查到则返回-1
	int i=locate(elm);
	if(i<elem[0])return elem[i+1];
	return -1;	
}

int linear::locate(elemtpl x)//得到x的位置
{
	int i;
	for (i=0;i<elem[0];i++)
	{
		if (elem[i]==x)return i;
	}
	return -1;
}

int linear::insert(int i, elemtpl b)//在i插入b
{
	int j;

	if (i>elem[0]||i<1)return 0;

	elem[0]++;
	j=elem[0];
	for (;j>i;j--)
	{
		elem[j]=elem[j-1];
	}
	elem[i]=b;

	return 1;

}

int linear::deletel(int i)//删除第i个数
{
	if (i>elem[0]||i<0)return 0;
	else
	{
		i-=1;
		for(;i<elem[0];i++)
		{
			elem[i]=elem[i+1];
		}
		elem[0]-=1;
		return 1;
	}
}

int linear::empty()//判断线性表是否为空
{
	if (elem[0]==-1)
		return 1;
	return 0;
}

void linear::clear()//清空线性表
{
	elem[0]=-1;
}

void linear::add(elemtpl x)//线性表加入数
{
	elem[0]+=1;
	elem[elem[0]]=x;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -