网上有贴说,第四题有01背包问题解决我发现不行。很简单,小的值对应的的余数也可以大,大的值对应的余数也可以小。逻辑混乱。所以我添加了一个辅助集合Sorted,进行暴力破解。 static SortedSet<Integer> set = new TreeSet<>(); public static void knapsack01(int[] data, int k, int m, int total) { int n = data.length; // 已经对数组中的所有数据进行判断了 if (k==n) { set.add(total%m); } else { // 选当前索引的数组,也就是total值增加 knapsack01(data, k+1, m, total+data[k]); // 不选当前索引的数组,total值不变 knapsack01(data, k+1, m, total); } }
点赞 评论

相关推荐

zzzzhz:兄弟你先猛猛投简历至少三百家,能约到面试就去面。最近可以速成智能小车,智慧家居烂大街的项目,不需要自己写,只需要把里面的代码讲解看明白就行。把其中涉及到的八股文都拿出来单独背一下,我去年找工作就一个智能小车智慧家居找了10k差不多。
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务