牛客网
xiaoxiaosuwy
这个作者很懒,什么都没留下…
展开
-
背包问题总结
参考https://blog.csdn.net/lanyu_01/article/details/79815801参考中包括求出背包中装入物品的编号及背包问题的优化0-1背包问题0-1背包问题是指每一种物品都只有一件,可以选择放或者不放。现在假设有n件物品,背包承重为m。问题描述有N件物品和一个容量为V 的背包。放入第i件物品花费的容量是weight[i],得到的价值是value[i]。求解将哪些物品装入背包可使价值总和最大。动态规划:找初始状态和状态转移方程。初始状态很容易就能转载 2020-06-04 15:12:15 · 224 阅读 · 0 评论 -
二叉树相关
1,重建二叉树输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。知识点1,Arrays:包含了操作数组的各种方法Arrays.copyOfRange(T[ ] original,int from,i...原创 2020-04-17 21:52:32 · 138 阅读 · 0 评论 -
二维数组
1,在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。选定左下或右上,以左下为例:比较值<目标值,右移,比较值>目标值,上移,相等,返回truepublic boolean Find(int target, int [][] arr...原创 2020-04-01 22:11:48 · 168 阅读 · 0 评论 -
剑指offer--剪绳子
给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。原文链接:https://blog.csdn.net/u012429555/articl...转载 2020-04-01 21:39:49 · 205 阅读 · 0 评论 -
矩阵类题目
矩阵中上下左走四个方向移动矩阵用一维数组表示,行数rows,列数cols与矩阵有关,考虑定义行号i,列号j,index=i*cols+j牛客网剑指offer 65 矩阵中的路径思路:递归1,矩阵中元素是否已经访问——一个格子只能走一次定义与矩阵大小相同的一维数组做标记数组flag` //标志位,初始化为falseboolean[] flag = new boolean[matr...原创 2020-03-28 15:29:10 · 1087 阅读 · 0 评论 -
深度优先遍历(DFS)和广度优先遍历(BFS)
参考链接:https://blog.csdn.net/rr123rrr/article/details/77971771https://blog.csdn.net/weixin_42289193/article/details/81741756广度优先搜索(BFS)广度优先搜索是按层来处理顶点,和树的层序变量很像根据广度优先遍历的特点我们利用Java数据结构队列Queue来实现。搜索步...原创 2020-03-28 12:02:31 · 179 阅读 · 0 评论 -
剑指offer 63题: 求数据流中位数
题目描述:如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。题意理解:动态的求平均例如,传入的数据为:[5,2,3,4,1,6,7,0,8],那么按照要求,...原创 2020-03-25 22:13:19 · 119 阅读 · 0 评论