自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【POJ】1146 C++

一个正确但是时间复杂度很高的代码:(递归)本题的测试用例很大时,用法二会超时;

2024-06-02 16:43:58 540

原创 【用数组存数值出现次数】完成一半题目

有 N 位扣友参加了微软与力扣举办的「以扣会友」线下活动。主办方提供了 2*N 道题目,整型数组 questions 中每个数字对应了每道题目所涉及的知识点类型。若每位扣友选择不同的一题,请返回被选的 N 道题目至少包含多少种知识点类型。示例 1:输入:42 1 6 2输出:1解释:共有 2 位扣友,在 4 道题目中选择 2 题。可选择完成知识点类型为 2 的题目时,此时仅一种知识点类型,因此至少包含 1 种知识点类型。示例 2:输入:12输出:2。

2024-06-27 12:07:39 186

原创 【离散数学·图论】(复习)

5.连通分量:是G的连通子图,而不是G的其它连通子图的真子图。对于G1(V1,E1),G2(V2,E2) ,存在映上的从V1到V2 的函数f;回路:若一条通路在相同的顶点开始和结束,且长度大于0,则它是一条回路。3.G=(V,E)中,顶点v所有邻居的集合:N(v), 成为v的邻域。简单图的着色:给每个顶点都指定一种颜色,使没有两个相邻的顶点颜色相同。2.欧拉通路 充要:有2个顶点度数为奇数,其它为偶数。(1)强连通:对任意a,b a到b有,b到a也有;(2)弱连通:在有向图的基本无向图中是连通的;

2024-06-24 01:34:31 333

原创 【离散数学·数论】(复习)

4.将有效同余的两边除以一个整数不一定会产生有效同余,但除以一个与模互素的整数,则会产生有效同余:(一的1的第二个图)在分治算法和递推关系中,将介绍一种比传统整数乘法算法更有效的算法 (O(n^1.585));other:埃拉托色尼筛,表示函数,素数分布,素数和算术级数,生成素数,关于素数的猜想。如果,ac与bc模m同余,且gcd(c,m)=1,那么a与b模m同余。gcd(a,b)=1,且a | bc,那么a | c。b(mod m)的同余,其解都是满足该同余的整数x;(a 和m是互素的,才存在逆)

2024-06-24 00:06:28 405

原创 【离散数学·命题逻辑】(复习)

明年11月1日是晴天,是命题(早晚可判断真假);1.如果有一个真值赋值给它的变量,使它成为真的,那么这个复合命题是可满足的。前提和结论都必须写成字句的形式 (用“或”连接,且每一项是。1. 命题 两个要素:(1)陈述句,(2)可判断真假。(说的是,当q不为真时,p不能为真)位串是0位或多位的序列,位串的长度就是它所含位的数目。1.若p<->q是永真式,则p和q逻辑等价,用记号p。4.谓词有:一元谓词,二元谓词,n元谓词等;10.重言式是一个总是正确的命题,如:p。只有p,q同T,或同F时,语句为T;

2024-06-23 17:19:06 378

原创 【离散数学·关系】(复习)

设R是定义在集合A上的等价关系,与A中的一个元素a有关系的所有元素的集合叫做a的等价类。(2)若a,b由于等价关系而相关联,则称它们是等价的 ( a~b)此图中,不满足自反性,满足:对称性,反对称性,传递性;3.反对称性:说法(1):对于任意的x,y,(x,y)3.最大元,最小元:(可能不存在,若存在,只能是1个)集合A上的二元关系R是A×A的子集或从A到A的关系。a是边(a,b)的始点,b是边(a,b)的终点;(S,R) (定义在集合S上的偏序关系)2.笛卡尔积:A×B={(a,b) |

2024-06-23 12:49:57 537

原创 【离散数学·集合,函数,序列,求和】(复习)

如 正有理数集,整数集,有限字母表上的有限字符集(可数无限),Java程序的集合等都是可数的。1.若f是从A到B的函数( f 把A映射到B),则A是f的定义域,B是f的陪域(值域,上域);3.(1)单射:一对一,如果有f(a)=f(b),则对定义域内所有a和b,a=b。6.图像:f的图像是有序对(a,b)的集合,其中,a为定义域中元素,b=f(a)。5.幂集:P(a) 集合a的所有子集的集合,基数:2^n。若f(a)=b,则b是a的像,a是b的原像。如{1,5,5,3,3,1}={3,1,5}

2024-06-23 01:25:57 474

原创 【离散数学·算法】(复习)

重复这个过程,直到整个列表都已经排好序为止(直到只剩下1个元素未选择)。幂指>阶乘>指数>幂(n)>O(nlogn)>幂(根号n)>O(logn)>常数(O(1))(指数小于1),其中,对数:O(nlogn)>O(logn)(1)存在常数C和k,当x>k时,有 |f(x)|<=C|g(x)| : f(x)是g(x)的大O表示(f=O(g)),或g是f的上限。(1)存在常数C和k,当x>k时,有 |f(x)|>=C|g(x)| : f(x)是g(x)的大Ω表示。(二分,插入,冒泡,选择,合并,快速,锦标赛)

2024-06-22 20:51:41 411

原创 【数据结构·队列】链队列(带头结点)模板简单应用算法设计:长整数加法计算

目的:使用C++模板设计链队列的抽象数据类型(ADT)。并在此基础上,使用链队列ADT的基本操作,设计并实现简单应用的算法设计。内容:(1)请参照单链表的ADT模板,设计链队列的抽象数据类型。(由于该环境目前仅支持单文件的编译,故将所有内容都集中在一个源文件内。在实际的设计中,推荐将抽象类及对应的派生类分别放在单独的头文件中。参考教材、课件,以及网盘中的单链表ADT原型文件,自行设计链队列的ADT。注意:链队列带头结点。(2)ADT的简单应用:使用该ADT设计并实现应用链队列的算法设计。

2024-06-09 15:54:19 580

原创 【数据结构·树】哈夫曼树的建立(二叉链表)(建立哈夫曼树,层次/前/中/后遍历输出权值及结点数据,以及输出哈夫曼编码)(附:函数指针作为形参以及调用)C++

第一行:Huffman树的层次遍历结果(非叶子结点显示形式: (结点权值),叶子结点显示形式: 结点data(结点权值) )第二行:Huffman树的前序遍历结果(非叶子结点显示形式: (结点权值),叶子结点显示形式: 结点data(结点权值) )第三行:Huffman树的中序遍历结果(非叶子结点显示形式: (结点权值),叶子结点显示形式: 结点data(结点权值) )第四行:Huffman树的后序遍历结果(非叶子结点显示形式: (结点权值),叶子结点显示形式: 结点data(结点权值) )

2024-06-08 16:19:14 897

原创 【数据结构·树】二叉树:中/前/后 序遍历非递归实现(附:RE的3个原因)C++

if(sign)sign=false;s.pop();//用户函数int main()string str;sign=true;InOrder(T);return 0;

2024-06-07 15:46:40 1272

原创 【数据结构·树】二叉树:完全二叉树的判断 (附:新定义一个结构体类型,用队列存储;模板实例化)C++

提示:如果一棵二叉树是完全二叉树,那么按照二叉树的性质5可知,按层编号的最后一个结点的编号等于树上的结点总数。对于每个标记值为n的结点,它的两个孩子结点的标号值分别为2n和2n+1。与层次遍历(基本操作5)不同的是,在判断完全二叉树时,队列中不仅要保存指向结点的指针,还需要保存结点的编号。//前序遍历(递归)//num的初始值为0,作用为控制输出格式(最后1个结点后不加“,”)为了用队列既存储树的结点,又存储当前结点左右孩子对应的编号(若是完全二叉树,该结点(i)的左孩子为2i,右孩子为2i+1)

2024-06-06 21:11:37 826

原创 【数据结构·树】二叉树:表达式二叉树转换成中缀式(括弧处理)(注意:运算符优先级以及与括号的结合性)C++

对于a+(b-c)可拆括号变成a+b-c,同样对于a*(b/c)可拆括号变成a*b/c;// + 与 *而对于a-(b+c)不可拆括号变成a-b+c,同样对于a/(b*c)不可拆括号变成a/b*c。// - 与 /

2024-06-05 23:16:17 1258

原创 【数据结构·树】二叉树:建立存储结构(层次次序)(借助队列)C++

内容:(1)请参照链表的ADT模板,设计二叉树并逐步完善的抽象数据类型。参考教材、课件,以及网盘中的链表ADT原型文件,自行设计二叉树的ADT。无孩子或指针为空的情形,算法通过特殊分隔符识别(输入)),至少有1个根结点。(2)基本操作:二叉树的二叉链表存储形式的建立,完成后将其加入到二叉树的ADT基本操作集中。输入数据为层次次序,要求设计一个算法,将二叉树转化为二叉链表的存储形式。注意:二叉树ADT的基本操作的算法设计很多要用到递归的程序设计方法。输出:按definition构造二叉树的二叉链表。

2024-06-05 22:00:40 301

原创 【数据结构·树】树的基操 之 先序构造树并先序,中序,后序遍历输出;(附:控制遍历时的输出格式;RE的一个原因;)C++

/前序遍历(递归)//num的初始值为0,作用为控制输出格式(最后1个结点后不加“,”)bool PostOrderTraverse( BinaryTreeNode *T );//后序遍历(递归)//中序遍历(递归)2.RE的一个原因:返回值为bool或其它非void的函数体内未设置return语句;//返回二叉树结点的个数。//判断二叉树是否为空。//获取根结点元素值。

2024-06-04 16:46:06 739 2

原创 【数据结构·队列】杨辉三角形 (顺序队列模板简单应用算法设计)C++

内容:(1)请参照顺序栈的ADT模板,设计顺序队列的抽象数据类型。参考教材、课件,以及网盘中的顺序栈ADT原型文件,自行设计顺序队列的ADT。并在此基础上,使用顺序队列ADT的基本操作,设计并实现简单应用的算法设计。应用1:要求设计一个算法,使用顺序队列,设计并实现打印输出杨辉三角形前N行元素的算法。(2)ADT的简单应用:使用该ADT设计并实现若干应用顺序队列的算法设计。//顺序队列最大存储空间加倍。//判断顺序队列是否为空。//判断顺序队列是否为满。//将顺序队列置为空。//设置顺序栈的长度。

2024-06-02 17:27:44 905

原创 【POJ】2480 C++

对于求最大公约数的和的问题,辗转相除法可以,但对于数字很大时,还是建议了解一下欧拉函数。法二:(参考的别人的,对数值大的数很友好)法一:(辗转相除法)

2024-06-02 16:47:51 328

空空如也

空空如也

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

TA关注的人

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