2.21力扣-回溯组合

77. 组合 - 力扣(LeetCode)

一:JAVA

java 复制代码
class Solution {
    List<Integer> list =new LinkedList<>();
    List<List<Integer>> ans =new LinkedList<>();

    public List<List<Integer>> combine(int n, int k) {
        df(n, k, 1);
        return ans;
    }

    public void df(int n, int k,int start){
        if(list.size()==k){
            ans.addLast(new LinkedList<>(list));
        }

        for (int i = start; i<=n; i++) {
            list.addLast(i);
            df(n, k, i+1);
            list.removeLast();
        }
    }
    
}

Q:这段代码中不能直接将 ans.addLast(new LinkedList<>(list)); 替换为 ans.addLast(list);,原因涉及到 Java 中的对象引用行为。

相关推荐
想跑步的小弱鸡15 分钟前
Leetcode hot 100(day 3)
算法·leetcode·职场和发展
xyliiiiiL2 小时前
ZGC初步了解
java·jvm·算法
爱的叹息2 小时前
RedisTemplate 的 6 个可配置序列化器属性对比
算法·哈希算法
独好紫罗兰3 小时前
洛谷题单2-P5713 【深基3.例5】洛谷团队系统-python-流程图重构
开发语言·python·算法
每次的天空3 小时前
Android学习总结之算法篇四(字符串)
android·学习·算法
请来次降维打击!!!4 小时前
优选算法系列(5.位运算)
java·前端·c++·算法
qystca4 小时前
蓝桥云客 刷题统计
算法·模拟
别NULL4 小时前
机试题——统计最少媒体包发送源个数
c++·算法·媒体
weisian1515 小时前
Java常用工具算法-3--加密算法2--非对称加密算法(RSA常用,ECC,DSA)
java·开发语言·算法
程序员黄同学6 小时前
贪心算法,其优缺点是什么?
算法·贪心算法