- 博客(7)
- 收藏
- 关注
原创 和为s的连续正数序列
剑指 Offer 57 - II. 和为s的连续正数序列输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。滑动窗口可以看成数组中框起来的一个部分。在一些数组类题目中,我们可以用滑动窗口来观察可能的候选结果。当滑动窗口从数组的左边滑到了右边,我们就可以从所有的候选结果中找到最优的结果。对于这道题来说,数组就是正整数序列 [1, 2, 3, , n]。我们设滑动窗口的左边界为 i,右边界为 j,则滑
2020-09-29 21:27:55 112
原创 java常用API
一、数组排序:Arrays.sort(nums);复制:System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length);二、哈希表遍历 String key = null; String value = null; // 获取键值对的迭代器 Iterator it = map.entrySet().iterator();
2020-09-29 16:06:47 115
原创 项目一回顾
FileUploadUtils:根据item.isFormField()查看文件是否是form表单数据如果是的话map.put(fieldName, value);否则证明是要待上传的文件,是的话将其保存到磁盘上,并在将其绝对路径放入map中:map.put(fieldName, basePath);DruidUtils:数据库连接工具HttpUtils:获取请求体request.getInputStream(),然后用outstream写入,返回outstream。listener
2020-09-25 21:04:28 177
原创 n & (n - 1)的用法
(n−1) 解析: 二进制数字 n 最右边的 1 变成 0 ,此 1 右边的 0 都变成 1 。n & (n - 1) 解析: 二进制数字 n 最右边的 1 变成 0 ,其余不变。例题1:剑指 Offer 15. 二进制中1的个数请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。public class Solution { public int hammingWe
2020-09-24 20:14:04 3231
原创 剪绳子/整数分割
一、暴力搜索(递归):对于给定的一个整数 n,穷举它的每一种分解情况,然后对所有情况,求最大值。并且我们知道,n 可以拆成如下情况:通过上图,我们很容易得到一个递归表达式:F(n) = max {i * F(n - i)},i = 1,2,… ,n - 1F(n)=max{i∗F(n−i)},i=1,2,…,n−1上述表达式是表明n - i需要继续分解的情况,但如果n - i比F(n - i)要大,显然就不用再继续分解了。故我们还需要比较i * (n - i)与i * F(n - i)的大小关
2020-09-22 22:45:46 108
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人