摘要: 题意: 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 返回 true 。示例 2: 给定二叉树 [1,2,2,3,3,null, 阅读全文
posted @ 2018-06-24 09:57 simpleknight 阅读(4940) 评论(0) 推荐(0) 编辑
摘要: 题意:已知一个集合A含有M个元素,输出含有N个元素的集合A的所有子集 思路:深搜 代码: 阅读全文
posted @ 2018-06-23 20:19 simpleknight 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 面积法:若点P在三角形ABC内,则三角形ABP+三角形ACP+三角形BCP的面积等于三角形ABC 已知三角形三点坐标ABC,如何求三角形面积呢? 根据叉乘公式,向量A=(x1,y1) ,向量B=(x2,y2),A x B = x1*y2 - x2*y1 此时求得的是向量A和向量B的形成的平行四边形的 阅读全文
posted @ 2018-06-23 18:17 simpleknight 阅读(4576) 评论(0) 推荐(0) 编辑
摘要: shift后门入侵 步骤 找到 C:\WINDOWS\system32\sethc.exe 文件并将其删除 在工具文件夹选项——查看中红圈中的更改了 将 C:\WINDOWS\system32\dllcache\sethc.exe删除,这个文件夹中放着缓存,如果不删除就会自动变回去 找到 C:\WI 阅读全文
posted @ 2018-04-13 16:06 simpleknight 阅读(4266) 评论(0) 推荐(1) 编辑
摘要: 顺时针打印矩阵 普通的模拟,和2017ACM青岛站的铜牌题特别像,但是我代码写的非常差,把循环写死...先粘上来吧,一会儿学一下评论区大佬们的写法 包含min函数的栈 这道题没看懂题意,直接看的题解,发现果然是有巧计的,时间复杂度为O(1) 在这里定义了2个栈,一个是装数据,另一个装最小值,每一次压 阅读全文
posted @ 2018-04-02 18:53 simpleknight 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 突然间很想写下自己现在的心情,在图书馆纠结了很久,还是决定将现在的自己写下来,或许,等到一切都过去,会嘲笑现在的自己吧 关于心态 感觉自己又回到了去年3月的自己,迷茫,无助,看不到未来的恐慌感,那时的自己还在ACM集训队里,虽然每天都在成栋楼编程序但是深深的感觉自己的瓶颈,感觉自己看不到前方的路,几 阅读全文
posted @ 2018-03-29 19:34 simpleknight 阅读(217) 评论(0) 推荐(3) 编辑
摘要: 调整数组的位置时奇数放在偶数前 模拟一下就好了 链表中倒数第k个结点 跑一遍链表有多少个结点,然后输出第n-k+1个结点就是倒数第k个结点 反转链表 采用头插法即可 合并两个排序的链表 平时写代码不严谨的锅,没有考虑两个链表可能为空的情况,导致一直提示段溢出,差点怀疑人生,整整搁置数天才AC了,AC 阅读全文
posted @ 2018-03-26 16:52 simpleknight 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 服务器端代码 客户端代码 阅读全文
posted @ 2018-03-25 19:23 simpleknight 阅读(1978) 评论(0) 推荐(0) 编辑
摘要: 斐波那契数列 利用滚动数组的方法节省空间 跳台阶 规律就是上一题的斐波那契数列,这回是用递归的方式写的 变态跳台阶 一共有n个台阶,第n个台阶必须跳上去,对于剩下的n-1个台阶可以选择跳或不跳,结果为2^(n-1) 矩形覆盖 和之前的青蛙跳一摸一样.... 二进制中1的个数 要了解如何求一个数的补码 阅读全文
posted @ 2018-03-12 16:26 simpleknight 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 一个n个结点的二叉树有2n个指针,非空指针数为树的边数为(n-1),则空指针数为(n+1) 二叉链表根节点的左指针指向树的根节点,右指针指向树的根节点的兄弟。 树的根节点没有兄弟,因此为空 一个n个结点的二叉树有2n个指针,非空指针数为树的边数为(n-1),则空指针数为(n+1) 二叉链表根节点的左 阅读全文
posted @ 2018-03-12 16:15 simpleknight 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 二维数组中的查找 由于矩阵是有序的,我们从矩阵的左下角来看,向上的递减的,向右是递增的,因此要从左下角开始寻找,当目标数字比左下角的数字大时右移,当目标数字小时上移 替换空格 从后往前找空格,遇到空格先把后面的字符串往后移,再将空格位置替换成“%20”即可 从尾到头打印链表 将链表从头到尾扫一遍,利 阅读全文
posted @ 2018-03-11 16:15 simpleknight 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 链表的特点: 链表的特点: 判断单向链表是否存在环的最佳方法——快慢指针 判断单向链表是否存在环的最佳方法——快慢指针 让快慢指针都从链表头开始,快指针每次向前移动连续大小的位置,慢指针每次只向前移动一个位置,如果快指针到NULL,那么就说明不存在环,如果快指针赶上了慢指针,则存在环。 静态链表是用 阅读全文
posted @ 2018-03-11 14:28 simpleknight 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 题意:定义d(x)是数字x正因子的个数,给你l,r,k,求 思路:任何一个大于1的自然数,都可以唯一分解成有限个质数的乘积,这里均为质数,其诸指数是正整数。那么它的正因数个数为,那么 ,由于​k​​)=(kc​1​​+1)(kc​2​​+1)...(kc​m​​+1)。l 和 r 的是到10的12次 阅读全文
posted @ 2017-08-04 10:56 simpleknight 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个序列a,求序列b满足 ①1<=bi<=ai ②对于序列b[l,r] gcd(bl,...,br)>=2的序列数是多少 思路:显然这道需要我们枚举gcd 设F(d)是序列b满足gcd是d的倍数的个数 F(d)的结果显而易见为∏a[i]/d 根据容斥原理ans=F(2)+F(3)+F(5) 阅读全文
posted @ 2017-08-02 16:38 simpleknight 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 题意:求a<=x<=b ,x<=y<=d,中gcd(x,y)==k的数对个数 思路:题目可以转化成求1<=x<=b/k,1<=y<=d/k中gcd(x,y)=1的数对的个数 我们设f(d)表示恰好gcd(x,y)==d的个数,F(d)表示gcd为d的倍数的数对个数 F(n)=∑d|nf(d)=> f 阅读全文
posted @ 2017-07-31 20:14 simpleknight 阅读(196) 评论(0) 推荐(0) 编辑