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

数据结构2023考研笔记(自我理解版)

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

数据结构2023考研笔记(自我理解版)

文章目录
    • 2.1线性表L 前言
      • 2.1.1··用到的单词缩写,函数
      • 2.1.2··sizeof
      • 2.1.3--typedef的用法
      • 2.1.4--指针变量
      • 2.1.5--c语言动态分配空间
      • 2.1.6--参数传递:值传递、地址传递、引用传递
    • 2.2 自问自答
      • 2.2.1.引用调用和调用有什么区别和联系?
      • 2.2.2 线性表(Linear List)是什么?
      • 2.2.3 .数据结构三要素
      • 2.2.4. 线性表的基本操作
      • 2.2.5. 顺序表 随机存取
      • 2.2.6.脏数据
    • 2.3 线性表的链式表示 顺序存取
      • 2.3.1 相关术语:头指针,头结点,首元结点
      • 2.3.2 单链表

2.1线性表L 前言 2.1.1··用到的单词缩写,函数
LOC(L)---location 
ElemType--数据元素类型 element type,不是关键字 ,比如typedef char ElemType;可以提前定义,也可以直接定义结构体时不使用ElemType
SqList--顺序表 sequence list
malloc、free函数--动态申请和释放空间,使用到头文件
new、delete关键字--C++方法动态申请和释放空间
LinkList--英文意思单链表,通常用LinkList定义单链表,表示时强调是一个单链表,与LNode*等价
LNode--链表中的任意结点,LNode* 强调是一个任意节点的指针变量
2.1.2··sizeof
sizeof(int)= 4B  //B是字节byte简写
sizeof(char)=1B
2.1.3–typedef的用法

见这里

2.1.4–指针变量
ElemType *Data; 类似int a; 只在变量名前多了*号

用法见C语言指针变量的定义与使用

2.1.5–c语言动态分配空间

L.data ,在C++中是 L->data
(ElemType*) 起  强制转换成指针型 的作用
malloc(m),m是  整数  哦
2.1.6–参数传递:值传递、地址传递、引用传递

可以看C语言函数参数的传递详解

我的理解 
    值传递    调用时把实参传过去,函数改变的是形参的值,但是不改变实参。
    引用传递   需要把值传过来。
    地址传递 (指针变量 做参数)由于传了地址,再使用*p就用的变量值了,内存地址上的东西变了,也相当于改变了实参;
    									不使用*p实参不会改变。 
    		 (数组名作参数),传递数组首地址,改变实参
    		 (引用类型作参数),&j=i;  //&j 会跟着 i 改变而改变,j和i是用的同一块地址C++语法 引用:给一个对象起别名

2.2 自问自答 2.2.1.引用调用和调用有什么区别和联系?

引用& 把修改的结果带回来
参见:https://blog.csdn.net/culing2941/article/details/108618649

普通调用实现函数,只不过函数结果存到另一个地方,没有覆盖传入参数的值

注意用C++工具运行

#include
void test(int &x){
	x=100002; 
	printf("test函数内部x=%dn",x);
}

int main(){
	int x=1; 
	printf("调用test函数前x=%dn ",x);
	test(x);//注意这里没有赋予新的变量保存调用函数的结果
	printf("调用test函数后x=%dn",x);
}
调用test函数前x=1
 test函数内部x=100002
调用test函数后x=100002
2.2.2 线性表(Linear List)是什么?
由相同类型数据元素组成的有限序列。  L
涉及名词:位序---线性表中的第几个(像电梯一样,没有第0个,`从1开始`)
		空表---元素个数为0
2.2.3 .数据结构三要素
逻辑结构、运算、
逻辑结构:比如线性表
2.2.4. 线性表的基本操作
增删改查
InitList(&L)
2.2.5. 顺序表 随机存取


2.2.6.脏数据

内存遗留的数据,虽然编译器会在定义变量是赋初始默认值,但编译器种类太多,建议自己设置初始值 L.length=0//顺序表初始长度为0

2.3 线性表的链式表示 顺序存取 2.3.1 相关术语:头指针,头结点,首元结点

简记:首元即第一个元素,所以算表长时从首元结点开始,头结点不算

2.3.2 单链表
//-----------单链表的存储结构---------------
typedef struct LNode{
    ElemType data; 		//节点的数据域
    struct LNode *next; //节点的指针域
}LNode,*LinkList; 		//同样含义的两个别名,LinkList为指向结构体LNode的指针类型,强调定义的是单链表的头指针
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/955214.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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