栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

数据结构第二章 顺序表的基本操作之查找

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据结构第二章 顺序表的基本操作之查找

查找分为两大类:按位查找 按值查找

【按位查找】:时间复杂度为0(1)

//顺序表的基本操作之查找
【静态分配方式】
GetElem(L,i):按位查找,获取表L中第i个位置的元素值
#define MaxSize 10  //定义最大长度
typedef struct{
	ElemType data[MaxSize];  //用静态的“数组”存放数据元素
	int length; 			//顺序表的当前长度
}SqList;					//顺序表的类型定义(静态分配方式)
ElemType GetElem(SqList L,int i){
	return L.data[i-1]
}
【动态分配】
#define InitSize 10  //顺序表的初始长度
typedef struct{
	ElemType *data; //指示动态分配数组的指针 指针指向顺序表当中第一个数据元素
	int MaxSize;	//顺序表的最大容量
	int length; 	//顺序表的当前长度
}SeqList;			//顺序表的类型定义(动态分配方式)
ElemType GetElem(SeqList L,int i){
	return L.data[i-1];
}

【按值查找】:时间复杂度均为0(n)

【按值查找】
LocateElem(L,e):按值查找操作。L中找e
【动态分配】
#define InitSize 10  //顺序表的初始长度
typedef struct{
	ElemType *data; //指示动态分配数组的指针 指针指向顺序表当中第一个数据元素
	int MaxSize;	//顺序表的最大容量
	int length; 	//顺序表的当前长度
}SeqList;			//顺序表的类型定义(动态分配方式)
//在顺序表L中查找第一个元素值等于e的元素,并返回其位序
int LocateElem(SeqList L,ElemType e){
	for(int i=0;i 

基本数据类型:int char double float可以直接用运算符”=='进行比较 结构体不能用==比较

【结构体比较方法 定义函数进行比较】
//依次对比各个分量来判断两个结构体是否相等
 

【结构体比较方法 定义函数进行比较】
//依次对比各个分量来判断两个结构体是否相等
typedef struct {
	int num;
	int people;
}Customer;
bool isCustomerEqual (Customer a,Customer b){
	if (a.num == b.num && a.people == b.people)
		return true;
	else
		return false;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/994443.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号