自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 图的遍历和考法

类似树的层序遍历,需要借助队列辅助遍历,设置一个visited数组,如果遍历过了就可以绕过去。思路:广度优先遍历i节点所在的连通图,遍历完成找到j则证明有路径存在。题目:广度优先算法判断i与j之间是否存在路径。题目:写出深度优先的非递归表示方法。

2022-08-19 14:04:42 568 1

原创 有向图和无向图的代码与存储方式和常见考法

存储方式:在这里介绍邻接表和邻接矩阵的结构,其他存储结构方式考的较少,不在这里一一赘述。

2022-08-19 03:12:01 1288

原创 排序代码集合,来看一看

本文分别介绍了直接插入排序,希尔排序,二分插入排序,冒泡排序,快速排序,选择排序,堆排序,归并排序的思想与代码。

2022-08-07 02:04:25 231

原创 二叉树常见考法3(内容补充)

思路:要求直径最大,那绝对是两个叶子节点为尾部节点的一条路径,遍历寻找每个节点左右子树的高度,其加在一块快递会有路径最长的情况。思路:利用二叉搜索树的特性,其最小绝对差一定是前后节点的差值,遍历比较所有节点的值,然后对比查找出绝对差最小的两个节点即可。思路:遍历两颗二叉树,如果一颗二叉树子树不存在用另一颗二叉树的节点补上,如果节点都存在就将节点里的值累加。思路:遍历,,将两棵树的叶子节点分别放入两个数组中,检查两个数组里的叶子节点的值就好了。思路:没什么好说的,遍历累加,如果节点值在区间范围内累加就好。..

2022-08-06 02:00:36 151

原创 二叉树的常见考法2

思路:利用二叉排序树的特性,计算左或右子树节点的个数,在这里取左子树,如果k大于左子树个数进右子树查找,持续遍历,直到找到k与节点个数相等的情况即可!思路:考虑使用层序遍历算法,在这里需要一个结构体来记录当前节点在数组中的位置来找到后续的孩子节点并链上原节点。思路:利用二叉排序树的特性,中序遍历树,要求前一个结点不大于后一个结点即可。思路:层序遍历,找到节点的孩子均无左右孩子的节点,后序删除即可!考法31.2:孩子兄弟表示法,表示的存储结构,求树的高度。33.1:判断一颗二叉排序树是否是平衡二叉树。....

2022-08-05 13:28:13 381

原创 二叉树的常见考法1

关于树的常见考法,思路以及代码的实现

2022-07-15 11:57:38 352

原创 线索二叉树的应用

前提:为什么要有线索二叉树这个东东?????? 答:利用原来二叉树的n+1个空位建立线索机制,方便查找前驱和后继。问:可以不学吗?答:不学是不行的,因为考试要考啊。。。。 接下来让我们看看代码吧。。。 结构体:有了结构体干什么呢,当然先建个树玩玩呗。 创建线索二叉树: 问:为什么要加祖先节点呢?答:等会会用到的。。。建就对了,干就完了!!!奥力给 先序线索树的构建:相当于先序遍历一次树,当发现有空域时对树绑定前驱或后继,并进行标记,后面也差不多了。。代码:问:为什么要在递归的时候判断lta

2022-07-01 02:29:14 1075 1

原创 我的二叉树笔记,美丽的二叉树啊!

二叉树的结构体:创建一个二叉树二叉树的遍历方法:先序遍历:递归遍历:非递归遍历:中序遍历:递归:非递归:后序遍历:递归:非递归:层序遍历(利用队列):.........

2022-06-30 21:46:41 143 1

原创 我的队列笔记,不扣链队不知道,一扣代码吓一跳

结构体:常用操作:由于判断队列为满有三种方法,我们分开讨论1.牺牲一个存储单元2.结构体里增加一个长度判断 结构体:操作 3.增加一个flag做标志 结构体:代码:链队存储结构体:常用操作:以上代码仅供参考,如有错误恳请指正,谢谢!...

2022-06-22 08:51:16 59

原创 我的栈笔记。压栈的快乐,消栈的伤心。

顺序栈的结构体常用操作:链栈结构体:链栈常用操作:共享栈结构体:共享栈常用操作:小试牛刀(应用栈):题目:设单链表的表头指针为L , 结点结构由data 和next 两个域构成, 其中data 域为字符型。试设计算法判断该链表的全部n 个字符是否中心对称· 例如xyx 、XYYX 都是中心对称代码:以上代码仅供参考,如有错误恳请指正,谢谢!......

2022-06-22 01:36:32 165

原创 我的链表笔记3,多敲点代码让我心甘情愿,学习。

思路:归并排序链表,因为链表已经有序了且要插入结果相反,使用头插法就可以了。代码:题目:设A和B是两个单链表( 带头结点),其中元素递增有序。设计一个算法从A和B 中的公共元素产生单链表C , 要求不破坏A和B的结点。思路:新建一个链表用尾插法然后比较元素插入即可。代码:题目:已知两个链表.A和B分别表示两个集合, 其元素递增排列。编制函数, 求A与B 的交集, 并存放于链表A中。思路:与上一题类似,只不过无返回值。代码:题目:两个整数序列A=a1,a2,a3...am, 和B=b

2022-06-22 01:27:03 210

原创 我的链表笔记2,阳光快乐的每一天都要扣代码哦

思路:每次找出最小节点,删除并继续操作,直到整个链表为空,注意判断条件的变化题目: 单链表有环,是指单链表的最后一个结点的指针指向了链表中的某个结点( 通常单链表的最后一个结点的指针域是空的). 试编写算法判断单链表是否存在环。思路:快慢指针,新建两个指针p,q,q比p始终快一个指针,若pq相遇则代表有环存在题目:〖2009 统考真题〗已知一个带有表头结点的单链表, 结点结构为data,next。假设该链表只给出了头指针list. 在不改变链表的前提下, 请设计一个尽可能高效的算法,

2022-06-18 01:49:23 462

原创 越级错误集合,0分

思路:每次寻找链表里的最小值,然后输出后删除即可。代码: 题目:在一个递增有序的线性表中, 有数值相同的元素存在·。若存储方式为单链表,设计算法去掉数值相同的元素, 使表中不再有重复的元素, 例如( 7 , 10 , 10 , 21 , 30 , 42 , 42,42 , 51 , 70 ) ,将变为( 7 , 10 , 21 , 30 , 42 ,51,70)。思路:快慢指针操作,类似顺序表里的替换,只不过这里的节点要保存释放。代码:...

2022-06-16 19:15:17 56

原创 我的链表笔记

思路:递归查找,判断节点值是否相等,如相等删除即可!代码:题目: 在带头结点的单表L 中,删除所有值为x 的结点,并释放其空间,假设值为的结点不唯一, 试编写算法以实现上述操作。思路:循环查找值为X的节点删除即可。代码:题目:设L 为带头结点的单链表,编写算法实现从尾到头反向输出每个结点的值。思路:利用栈先进后出的特性,对节点倒置打印即可。代码:题目:试编写在带头结点的单链表L 中删除一个最小值结点的高效算法( 假设最小值结点是唯一的)思路:遍历链表,比较值,保存值小的节点然后

2022-06-12 14:08:48 342

原创 单链表与双链表的结构笔记

通过代码的探索,了解链表基本的使用方法,以及带头插入和不带头插入,头插法和尾插法的区别

2022-06-05 23:55:30 112

原创 我的线性表笔记3

题目:设将n(n>1) 个整数存放到一维数组R中。设计一个在时间和空间两方面都尽可能高效的算法。将R中保存的序列循环左移p(0

2022-06-04 22:35:52 335 2

原创 线性表笔记2

这里给出我觉得需要注意下标的代码题目:将两个有序顺序表合并为一个新的有序顺序表,并由函数返回结果顺序表思路:先循环遍历其中的一个顺序表,将其中元素比较完后放置在一个新的顺序表里,然后再检查是否有顺序表未遍历完的部分,如未遍历完直接接上即可(此时后面元素有序)代码:StaticSqlist mergetwolist(StaticSqlist a,StaticSqlist b){ StaticSqlist l; l.length = 0; int i=0,j=0,k=0; while

2022-05-16 14:11:15 143

原创 我的线性表笔记

我的个人笔记关于线性表的部分应用心得

2022-05-15 23:51:25 212 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除