- 博客(7)
- 收藏
- 关注
原创 leetcode不会的题整理42,84,887,1028,920,440
42.接雨水 动态规划,左右各扫描一次。每一个柱子的高度方向可以接的雨水的数量 = min(从当前柱子向左看的最高柱子高度, 从当前柱子向右看的最高柱子高度) - 当前柱子高度. 找到数组中从下标 i 到最左端最高的条形块高度left_max。 找到数组中从下标 i 到最右端最高的条形块高度right_max。 扫描数组 height 并更新答案: 累加min(max_left[i],max_ri...
2020-05-04 17:34:51 153
原创 leetcode89,56-I,201,面试题17.01位运算相关(待续)
lowbit函数:取出一个数二进制中的最后一个1,树状数组常用。 lowbit(x)=x&-x 补码是原码的反码反加一 ,变为反码后 x 与反码数字位每一位都不同, 所以当反码加1后,逢1一直进位直到遇到0,且这个0变成了1。补码中的最后一个1就是反码中的最后一个0,是原码中的最后一个1。补码中其他位,要么与原码相反,要么变成了0,所以lowbit操作后除了 lowbit 位是1,其余位都...
2020-04-24 16:11:14 150
原创 leetcode96与二叉树节点性质有关的题(待续)
leetcode96不同的二叉搜索树 给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树有多少种? 设f(i)表示以i作为根节点的二叉搜索树的个数,dp[i]为i个节点组成的二叉搜索树个数,dp[i]=f[1]+…+f[i]。dp[0]=1。 以i为根节点,左子树有dp[i-1]种,右子树有n-i个节点,有dp[n-i]种。所以f[i]=dp[i-1]*dp[n-i]。 dp[n]=f[1...
2020-04-24 15:30:20 122
原创 leetcode121,122,123,188,309,714。股票问题
1. leetcode121–买卖各一次,无其他限制 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。 动态规划。前i天最大收益=max(前i-1天最大收益,第i天价格-前i-1天最低价) class Solution { public: in...
2020-04-20 22:25:40 139
原创 leetcode200,695,463.岛屿问题-dfs
1.leetcode200岛屿数量 给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。 class Solution { public: int m,n; void dfs(int i,int j,vector<vect...
2020-04-20 16:27:11 219
原创 STL源码剖析学习笔记(一)基础回顾
迭代器是前闭后开区间(不一定是连续空间),begin()指向第一个元素,end()指向最后一个元素的下一个位置。 标准库中的哈希:separate chaining 链表。 类模板(尖括号),函数模板(实参推导),成员模板 泛化,特化(全特化):绑定数据类型,偏特化(局部特化):绑定template class中的其中几个(个数的偏特化)或绑定指针(范围的偏特化)。 ...
2020-04-17 22:45:52 112
转载 unix环境高级编程学习笔记1--编译源码
官网下载第三版源码,在centos7中执行命令: wget http://elrepo.reloumirrors.net/testing/el6/x86_64/RPMS/libbsd-0.2.0-4.el6.elrepo.x86_64.rpm wget http://elrepo.reloumirrors.net/testing/el6/x86_64/RPMS/libbsd-devel-0.2.0...
2020-04-13 20:47:34 154
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人