![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java算法
文章平均质量分 84
想把程序编整齐
需要努力的程序员。
展开
-
[0,1]背包问题求解思路
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 [0,1]背包问题背景一、解题思路二、计算实例总结 背景 以LeetCode416题为例,讲解0,1背包问题的求解思路 题目描述: 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例 1: 输入:nums = [1,5,11,5] 输出:true 解释:数组可以分割成 [1, 5, 5] 和 [11] 。 示例 2: 输入:nums = [1,2,3,5] 输出:原创 2021-06-07 11:54:38 · 170 阅读 · 0 评论 -
java实现回溯算法实例
java实现回溯算法实例 题目:216.组合总和 III 要求:找出所有相加之和为 n 的 k 个数的组合。组合中只允许含有 1 - 9 的正整数,并且每种组合中不存在重复的数字。 说明: 所有数字都是正整数。 解集不能包含重复的组合。 示例 1: 输入: k = 3, n = 7 输出: [[1,2,4]] 结题思路: 采用回溯的方法,根据示例1,查找分为3(k)层,第一层遍历所有元素,第二层在第一层基础上加一遍历,第三层在第二层基础上加一遍历。 结束条件:当查找求和大于等于预定值时,或者全部遍历后,或者原创 2020-12-17 21:51:12 · 678 阅读 · 0 评论 -
ArrayList和LinkedList详解
ArrayList和LinkedList区别 ArrayList是实现了基于动态数组 的数据结构,而LinkedList是基于链表的数据结构;LinkedList的空间利用效率高 对于随机访问get和set。即对于查询功能,ArrayList要优于LinkedList,因为LinkedList要移动指针; 对于添加和删除操作add和remove,一般大家都会说LinkedList要比ArrayList快,因为ArrayList要移动数据。但是实际情况并非这样,对于添加或删除,LinkedList和Arra原创 2020-12-06 12:51:01 · 216 阅读 · 0 评论 -
JAVA贪心算法实例
分割数组为连续的子序列 给你一个按升序排序的整数数组 num(可能包含重复数字),请你将它们分割成一个或多个子序列,其中每个子序列都由连续整数组成且长度至少为 3 。 如果可以完成上述分割,则返回 true ;否则,返回 false 。 示例 输入: [1,2,3,3,4,5] 输出: True 解释: 你可以分割出这样两个连续子序列 : 1, 2, 3 3, 4, 5 算法思路 首先使用两个哈希 map。nc和tail nc[i]:存储原数组中数字i出现的次数 tail[i]:存储以数字i结尾的且符合题意原创 2020-12-05 10:09:13 · 267 阅读 · 0 评论