- 博客(5)
- 资源 (4)
- 收藏
- 关注
原创 C++ 已知二叉树两种遍历序列,构建二叉树
已知先序遍历和中序遍历,可以求出后序遍历已知后序遍历和中序遍历,可以求出先序遍历已知先序遍历和后序遍历,不可求出中序遍历1.已知先序遍历和中序遍历,求后序遍历1.1 解题思想:由先序遍历的特点可知,先序遍历第一个元素为二叉树的根。由中序遍历的特点可知,二叉树的根的左面为左子树的中序遍历,右面为右子树的中序遍历。由先序遍历可以知道二叉树的根,由中序遍历可以知道二叉树的左子树和右子树,因此,我们可以用...
2018-06-20 15:12:33 7332 2
原创 优先队列 C++
1.头文件:include<queue>2.定义:优先队列和队列一样,只能从队尾插入元素,从队首删除元素。队列中最大的元素总是位于队首。可以通过重载<运算符来重新定义比较规则。3.优点:自动排序4.声明:priority_queue<数据类型> 队列名;5.常用的声明:5.1基本常量的优先队列:priority_queue<int> q1;priorit...
2018-06-13 20:26:56 5003
原创 离散化方法
个人笔记,仅供复习1.概念:离散化就是把无限空间的有限个体映射到有限空间去,从而大幅节省空间或时间。基本思想就是在众多可能的情况中“只考虑我需要用的值”2.适用范围:除了对于较大整数需要使用离散化之外,对于一些需要使用整型数据结构,但给出的数据却是小数的也可以使用离散化,将其索引为整数就可以了。3.一般步奏:排序去重建立索引4.例题:Uva12171// UVa12171 Sculpture//...
2018-06-13 18:29:25 8488
原创 基本模运算
1.概念:模运算是指取模运算,即求m/n的余数。模运算有许多基本规则,熟练掌握可以更好的编程。2.交换律: (a + b) % m = (b + a) % m (a * b) % m = (b * a) % m3.结合律: [(a+b)%m+c]%m = [a+...
2018-06-06 23:03:33 27561
原创 C++ 快速幂运算
1.概念:快速幂运算也叫反复平方法。顾名思义,算法就蕴含在名字中。2.原理: 假设要求x^n,如果n = 2^k,那么原题可以很轻松的表示为:x^n = ((x^2)^2)^2…。这样只要做k次平方运算就能解决,时间复杂度就从O(n)下降到log(n)。 由上面的分析可知,只要幂运算的幂可以写成2^k的形式,就可以用上面的方法降低时间复杂度。所以我们可以将任意的实数n改写有限个2^k的...
2018-06-05 20:21:14 37595 4
哈夫曼编码译码器-数据结构实训
2019-01-13
算法导论 PDF
2018-08-21
教职工信息管理系统-结课作业C++
2018-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人