12.3 1 二叉搜索树insert操作的递归版本 ~~~ void insert1(Node pRoot, Node pAdd) { bool bLeft = pAdd key key; Node pNextRoot = bLeft ? pRoot left : pRoot right; if(p ...
分类:
编程语言 时间:
2018-11-02 11:53:24
阅读次数:
621
题意 分析 考场做法 打表发现,最后的循环节一定是$\gcd(a_1,a_2),\gcd(a_1,a_2),0$这种形式,而稍微思考一下便知道这显然是一般情况。 然后都有gcd了,发现操作的实质都差不多是将$a_1$减去几个$a_2$后交换再相减,类似gcd递归版的取模操作,同时ans加上$\lef ...
分类:
其他好文 时间:
2018-10-29 14:50:36
阅读次数:
155
问题:合并两个排序的链表 要求:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 解题代码: 递归版: 非递归版: ...
分类:
编程语言 时间:
2018-10-29 11:17:28
阅读次数:
133
题目大意是:一个农夫有N头牛,每头牛的高度不同,让你找出指定区间最高牛和最低牛的高度差。 解题思路: 一看到题目就想到了线段树,然后用了递归的线段树,一开始一直TLE,本来想换成非递归版本,后来输入输出优化了一下就A了,这让我感受到了优化的妙处!!! 非递归版可以去看看这篇文章了解下:https:/ ...
分类:
其他好文 时间:
2018-10-27 11:58:44
阅读次数:
148
定义二叉树: 构建二叉树: BFS: 2.非递归版本 中序遍历: 1.递归版本 2.非递归版本 后序遍历: 1.递归版本 2.非递归版本 求二叉树最大深度: 求二叉树节点个数: ...
分类:
编程语言 时间:
2018-10-23 20:55:32
阅读次数:
194
快速幂对于k^n,每次将n分开 讨论n是否为偶数即可 时间复杂度自然从O(n)转变为了O(logn) 此处只呈现非递归版快速幂(不建议递归版快速幂) ...
分类:
其他好文 时间:
2018-10-10 14:20:26
阅读次数:
110
Linux 系统中 grep 命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep 全称是 Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 linux 下的 find: 功能:在目录结构中搜索文件, ...
分类:
系统相关 时间:
2018-09-03 10:33:42
阅读次数:
183
递归的数学思想: 递归函数: 递归函数设计技巧: 递归函数设计示例一: 递归版strlen: 运行结果如下: 递归函数示例二: 示例如下: 运行结果如下: 递归函数示例三: 程序如下: 运行结果如下: 小结: ...
分类:
其他好文 时间:
2018-08-30 23:28:13
阅读次数:
259
学习和参考 下面是支持区间修改和区间查询的zkw线段树模板,先记下来。 #include <algorithm> #include <iterator> #include <iostream> #include <cstring> #include <iomanip> #include <cstdl ...
分类:
其他好文 时间:
2018-08-28 14:25:45
阅读次数:
171
不爽。 为什么tarjan能爆栈啊 十分显然的缩点,给缩点之后的点连上权值为后一个点集权值的有向边,然后spfa跑最长路。 注意一开始$dis_{st}$应该等于$st$这个集合的权值。 时间复杂度$O(能过)$。 非递归版的tarjan可以学习一下。 Code: #include <cstdio> ...