- 博客(13)
- 收藏
- 关注
原创 数据结构--栈(栈的应用)
逆波兰式的求值:把数字字符直接入栈,直至+-*/要入栈时把栈顶的两个数字字符进行待入栈的运算后把运算完的值再进栈。二.逆波兰表达式(中缀转换后缀并求后缀表达式的值)一.用栈实现进制转换。
2023-12-26 15:13:02 404 1
原创 数据结构--栈
顺序栈的存储方式与线性表的顺序存储一样,用数组来存储.通过链表的形式来实现栈的功能.二.顺序栈的定义与初始化。五.获取顺序栈的栈顶元素。二.链栈的定义和初始化。五.获取链表的栈顶元素。六.判读链栈是否为空。
2023-11-16 17:37:44 33
原创 数据结构--线性表(双向循环链表)
双向循环链表与双向链表的定义和初始化一致,只在首元结点的front域和尾结点的next域不在为空,而是分别指向尾结点和首元结点。其插入只在头插和尾插与双向循环链表的有一点差别,中间插入一致.其删除只在删除首元结点时与双向链表有一点不一样,其余一致。二.双向循环链表的初始化。三.双向循环链表的插入。四.双向循环链表的删除。
2023-11-13 20:33:26 41
原创 数据结构--线性表(双向链表)
双向链表的插入和单链表的插入相识,都是先把原结点的指针域赋值给待插入的结点,再修改原结点的指针域.双向链表与单链表的区别就在于双向链表的每一个结点都多了一个指针,指向当前结点的前继结点。双向链表的其它操作(查找,修改,清空,判空)都与单链表一致.此不在展示代码.删除i位置的结点,与单链表的删除相似.四.双向链表的删除(位置i的删除)
2023-11-08 19:55:32 41 1
原创 数据结果--线性表(单循环链表)
单循环链表就是单链表的尾结点的next域从指向NULL改为指向首元结点,这样链表之间就形成了一个循环.单循环链表的插入只有头插和尾插与单链表的插入有点不一样,其它插入的一致.
2023-11-01 22:25:15 46 1
原创 数据结构--线性存储( 静态链表)
静态链表的第一个元素(数组下标为0)的cur存放的是备用空间(空闲空间)的第一个结点下标,最后一个元素(数组下标为20-1)的cur存放的是第一个有数值的元素的下标(第一个插入的元素的下标)静态链表是是用数组来代替指针,静态链表由data(数据)域和cur(相当于指针,称为游标)域。静态链表还未有数据时,其最后一个元素的cur默认为0(即0就是第一个插入元素)。知道要删除的元素的下标即可。
2023-10-29 22:49:28 47 1
原创 数据结构--线性表(链式存储)
结点是由结构体形成的,包含数据域和指针域,数据域里是这一个结点的数据,指针域里存储的是下一个结点的位置地址。把函数给返回值定义为bool(布尔)类型,可轻松判断是否查找成功。创建链表时建议使用头结点(头节点不是首元结点),如果有在头部的删除或增加操作方便操作。链式存储就是每个结点通过结点里的指针域里存储的地址而链接起来,像链条一样的链接。头指针是第一个结点的存储位置,因此如果有头结点,头结点的head就是头指针。只需一一比对结点的值是否等于x,等于就修改成y。(2.删除位置i的结点)
2023-10-16 16:25:29 46 1
原创 数据结构-- 线性表(顺序存储)
因为顺序存储是用数组来进行存储的,如果是插在顺序表长度的后一位,可直接插入,但若是在顺序表的中间或头部插入元素就需要移动顺序表的元素。删除只要判断删除的位置是否是数组元素的最后一个,是最后一个只需修改数组元素的大小即可,其它只需要把i位置之后的元素往前移动即可。元素位序可看成一个正在排队的队伍,小明排第3个,小明位序为3,因此元素位于第几个元素位序就为几。元素i的前一个元素为直接前驱,元素i的后一个元素为直接后继。只需查找元素值为x的下标后,即可转换为删除i位置的元素。(1.)删除i位置的元素。
2023-10-02 22:06:52 435 1
原创 函数的默认参数
(1.)当函数声明有了默认参数时,函数实现就不可有默认函数,如果函数声明和实现的有一样大默认函数,程序不知使用哪个,就产生了二义性,会报错。(2.)函数形参列表中,只要有一处是默认参数,其之后的所有必须是默认函数。因此函数声明和实现中同一个参数只可以一处是默认的。数据类型 变量名=数值。
2023-07-24 23:13:08 39
原创 new----运算符
使用delete后,不可再使用被释放的数据,不然会显示错误。用new开辟数组指针,开辟,释放时都要加。new创建的数据要程序员自己释放。
2023-07-08 20:52:59 33
原创 内存四区-代码区,全局区,堆区,栈区
全局区中还有常量区,常量分为字符常量和其它常量.(const修饰的变量是只读变量,不可更改值。代码区是共享的,在内存中只需有一份即可,防止程序被频繁使用造成内存浪费。在程序编译后,会形成exe的可执行程序,在未运行该程序前只有两个区。由程序员手动释放,若程序员不释放,程序结束由操作系统。由编译器自动分配,存放函数参数值,局部变量。代码区是只读的,防止程序意外改变其代码。const修饰的全局变量在全局区中。存放函数二进制代码,由操作系统管理。代码区,全局区,栈区,堆区.程序运行后,有四个区。
2023-06-27 20:38:45 107
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人