数据结构学习,一些知识点

线性表根据其在内存中的物理存储方式分为顺序存储结构和线性存储结构。除第一个元素外,每个元素有且仅有一个直接前驱;除最后一个元素外,每个元素有且仅有一个直接后续

线性表的特点有:

表中元素的个数有限

表中元素具有逻辑上的顺序性,表中元素有其先后次序

表中元素都是数据元素,每个元素都是单个元素

表中元素的数据类型都相同,意味着每个元素占有大小相同的存储空间

&的作用可以是 取地址符和引用符号

InitList(&L) 初始化表,构造一个新的线性表

Length(L) 求表长

LocateElem(L,e)按值查找操作,在表L中查找给定关键字值的元素

GetElem(L,i)按位查找操作,获取表L中第i个位置的元素的值

ListInsert(&L,i,e)插入操作,在第i个位置插入e

ListDelete(&L,i,&e) 删除操作,删除表L中第i个位置的元素,并用e返回删除元素的值

PrintList(L) 输出操作,按前后顺序输出线性表L中的所有元素值

Empty(L)判空操作,若L为空表,则返回true 否则返回false

DestoryList(&L) 销毁操作,销毁线性表,释放线性表占用的内存空间

线性表的顺序存储又称为顺序表,用一组地址连续的存储单元依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻。第一个元素存储在顺序表中的起始位置。顺序表的特点是表中元素的逻辑顺序与其存储的物理顺序相同

sizeof(ElemTye)是每个数据元素所占用存储空间的大小

顺序表中的任意一个数据元素都是可以随机存取的,所以线性表的顺序存储架构是一种随机存取的存储结构,通常用高级程序设计语言中的数组来描述线性表中的顺序存储结构

静态分配的顺序表存储结构为

include <iostream>

using namespace std;

define MaxSize 50

typedef int ElemType;

struct Sqlist{

ElemType data[MaxSize];

int Length;

};

void InitList (Sqlist &L){

L.Length=MaxSize;

for (int i=0;i<MaxSize;i++){

L.data[i]=i;

}

}

void Print(const Sqlist &L){

for(int i=0;i<L.Length;i++){

cout << L.data[i] << " ";

}

cout << endl;

}

int main(){

Sqlist myList;

InitList(myList);

Print(myList);

return 0;

}

写一个最简单的C++代码

写几点c++的基础语法和结构:头文件选择 iostream 用cin/cout代替 scanf/printf

分号不能忘记,每条语句后面都需要加上分号

main函数必须返回Int

typedef int ElemType; 和 using ElemType = int; 这两句话的含义是一样的

相关推荐
立志成为大牛的小牛23 分钟前
数据结构——五十二、散列函数的构造(王道408)
数据结构·笔记·程序人生·考研·算法
AAA阿giao1 小时前
大厂面试之反转字符串:深入解析与实战演练
前端·javascript·数据结构·面试·职场和发展·编程技巧
希望有朝一日能如愿以偿1 小时前
力扣每日一题:可被三整除的最大和
数据结构·算法·leetcode
闲猿类1 小时前
嵌入式第九天学习
linux·c语言·学习·算法·嵌入式
浪子不回头4152 小时前
经典数据结构-哈希链表-LRU
数据结构·链表·哈希算法
专注于大数据技术栈2 小时前
java学习--main方法
java·开发语言·学习
zzzsde2 小时前
【C++】哈希表实现
数据结构·c++·哈希算法·散列表
d111111111d3 小时前
关于STM32的选项字节的问题:如果我通过操作指针把数据写在了单片机的选项字节区域那么换别的程序时候数据会进行变化吗?
笔记·stm32·单片机·嵌入式硬件·学习
@卞4 小时前
高阶数据结构 --- 单调栈
数据结构
安如衫5 小时前
【机器学习基础】Attention in Transformers:注意力机制
笔记·深度学习·学习·机器学习·注意力机制