吉大计专专业课 - 考研复习专题
文章平均质量分 83
计专数据结构+程序设计笔记
作用太大了销夜
这个作者很懒,什么都没留下…
展开
-
最小生成树算法的相关变形题
由于吉大近几年的考试中,算法大题里频繁地出现最小生成树算法的变形题,因此在此整理一下。PS:prim算法不管是画图还是代码题真的难用,kruskal算法才是永远滴神。原创 2022-08-30 22:32:36 · 1450 阅读 · 6 评论 -
2021.10.9 力扣-二叉树的最近公共祖先
题目描述:定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”方法一: class Solution { public: TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) { /原创 2021-10-09 18:19:36 · 172 阅读 · 0 评论 -
程序设计-红皮书代码题记录
目录将一个正整数分解质因数 讲义P25辗转相除法 讲义P30给出年月日,计算该日是该年的第几天 讲义P32进制转换讲解 讲义P56打印集合M的前面100个最小数 讲义P59输入正整数n,打印集合的所有子集 讲义P61求所有元素个数为M的子集 讲义P67实现任意两个不同进制非负整数之间的转换 讲义P68交换两个向量的位置 讲义P80示例: 打印如下: 非递归写法:更为简便的递归写法:按讲义上的写法来的,主要是在于数据的健壮性判断十分繁琐 讲义上的代码写得不好,于是在网上搜到了这一种很有原创 2022-06-25 22:57:00 · 1571 阅读 · 0 评论 -
数据结构-第八章 排序-笔记-含吉大版本冒泡、快排
目录插入排序直接插入排序代码如下输出为:直接插入排序算法的效率分析:原创 2022-06-15 23:53:07 · 893 阅读 · 2 评论 -
数据结构-第七章 查找-笔记
目录分块查找存储的结构特点查找过程查找效率分析没用过分块查找,还真没啥印象主要区别在于查找分块时采用的是顺序还是二分,顺序查找不用多说,下面介绍一下比较特殊的二分查找使用二分法查找分块时,一般会出现“查找失败”的情况,但这时一定要在low所指的分块中继续查找。其原因在于二分法查找失败时,最终的low = high + 1,此时所要查找的关键值大小介于high和low所指的元素之间,例如图中的19最终介于high所指向的10和low所指向的20之间,但是这时不应该结束查找,因为按照分块查找的存储结构特点,每个原创 2022-06-08 23:54:46 · 227 阅读 · 0 评论 -
数据结构-第六章 图-笔记
目录邻接矩阵的阶乘性质例一:例二:图的存储邻接矩阵法邻接表法邻接矩阵的阶乘性质假设有图如下所示:例一:如图所示,A²[1][4]表示的是从A到D长度为2的路径数目,即用左矩阵的第一行与右矩阵的第4列作内积。为1表示A->B有1条长度为1的路径,为1表示B->D有一条长度为1的路径,它们相乘为1,说明A->D有一条长度为2的路径。完整结果如下:例二:左矩阵为A²,右矩阵为A,则A³[1][4]表示的是从A到D的长..原创 2022-05-29 00:01:00 · 858 阅读 · 0 评论 -
数据结构-第五章 树与二叉树-笔记
5.2.3 课后习题最近公共祖先将一棵二叉树按顺序结构存储,求编号为i和j的两个结点的最近公共祖先节点的值我首先想到了之前在力扣上写过的求二叉树中最近公共祖先的题目:(11条消息) 2021.10.9 力扣-二叉树的最近公共祖先_作用太大了销夜的博客-CSDN博客于是按照这个思路写了出来:node nodes[maxsize];int length; //二叉树的最后一个结点的编号int findancestor(int cur, int i, int j){ ..原创 2022-05-15 22:37:14 · 1027 阅读 · 5 评论 -
数据结构-第四章 串-笔记-吉大KMP算法与一般KMP算法的区别
串的模式匹配朴素模式匹配算法//若主串S中存在与串T相同的子串,则返回它在主串S中第一次出现的下标,否则返回-1int Index(string S, string T){ int k = 0; int i = k, j = 0; while (i < S.size() && j < T.size()) { if (S[i] == T[j]) { i++; j++; } else { k++; i = k;原创 2022-05-12 23:06:28 · 534 阅读 · 0 评论 -
数据结构-第三章 栈、队列和数组-笔记
目录自定义的栈和队列的实现栈的顺序存储队列的顺序存储队列的链式存储栈在括号匹配中的应用栈在表达式求值中的应用自定义的栈和队列的实现栈的顺序存储#define maxsize 10struct sta{ int data[maxsize]; int top; //top指向栈顶元素};//栈的初始化void InitStack(sta& s){ s.top = -1;}//判断栈是否为空bool StackEmp原创 2022-05-01 21:33:58 · 502 阅读 · 0 评论 -
数据结构-第二章 线性表-笔记
目录2011考研真题-求两个升序数组的中位数2020考研真题-三元组中的最小距离使用尾插法建立链表和头插法逆置链表2.3 线性表的链表表示-课后习题链表的初始化1、递归算法,删除不带头结点的单链表L中所有值为X的结点5、将带头结点的链表就地逆置6、递增排序单链表8、找出两个单链表的公共结点10、将单链表A分解成两条单链表A和B,A中存放序号为奇数的元素,B中存放序号为偶数的元素13、将两个递增排序的单链表,合并为一个递减排序的单链表14、两个单链表A和B递增有原创 2022-05-01 19:41:43 · 425 阅读 · 0 评论 -
2022.4.7 力扣-连接所有点的最小费用-最小生成树练习
目录题目描述:样例:方法一(普利姆算法-prim算法)本文参考:(5条消息) 数据结构--最小生成树详解_Ouyang_Lianjun的博客-CSDN博客_最小生成树Prim and Kruskal(并查集) - 连接所有点的最小费用 - 力扣(LeetCode) (leetcode-cn.com)题目描述:给你一个points 数组,表示 2D 平面上的一些点,其中 points[i] = [xi, yi] 。连接点 [xi, yi] 和点 [xj, yj] 的费用原创 2022-04-07 21:46:12 · 839 阅读 · 1 评论 -
2021.11.21 力扣-省份数量-并查集练习
题目描述:有 n 个城市,其中一些彼此相连,另一些没有相连。如果城市 a 与城市 b 直接相连,且城市 b 与城市 c 直接相连,那么城市 a 与城市 c 间接相连。省份 是一组直接或间接相连的城市,组内不含其他没有相连的城市。给你一个 n x n 的矩阵 isConnected ,其中 isConnected[i][j] = 1 表示第 i 个城市和第 j 个城市直接相连,而 isConnected[i][j] = 0 表示二者不直接相连。返回矩阵中 省份 的数量。方法一:cla原创 2021-11-21 23:56:11 · 216 阅读 · 0 评论