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

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

线性表的特点有:

表中元素的个数有限

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

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

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

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

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; 这两句话的含义是一样的

相关推荐
xvhao201315 小时前
P4084 [USACO17DEC] Barn Painting G 题解
数据结构·c++·算法·深度优先·动态规划
禹中一只鱼15 小时前
【力扣热题100学习笔记】 - 双指针
java·笔记·学习·leetcode·贪心算法
wangchunting15 小时前
算法-二分查找
java·数据结构·算法
月落归舟15 小时前
帮你从算法的角度来认识二叉树---(一)
数据结构·算法·二叉树
Kk.080215 小时前
数据结构|排序算法(三)堆排序
java·数据结构·排序算法
haiyangyiba15 小时前
学习Spring Ai的摸索实践
学习·spring ai
chase。15 小时前
【学习笔记】cuRoboV2——为高自由度机器人打造的动力学感知运动生成框架
笔记·学习·机器人
cpp_250115 小时前
P1569 [USACO ?] Generic Cow Protests【来源请求】
数据结构·c++·算法·题解·洛谷·线性dp
繁星星繁15 小时前
Docker(一)
java·c语言·数据结构·c++·docker·容器·eureka
泡泡鱼(敲代码中)16 小时前
C++-string学习笔记
c语言·开发语言·c++·笔记·学习·visualstudio