我来说一下我的理解 private void combination(char[] strs, int len) { if (len == strs.length) { paths.add(path.toString()); return; } for (int i = 0; i < strs.length; i++) { if (!visited[i]) { visited[i] = true; path.append(strs[i]); combination(strs, len + 1);//这一步开始进入新的循环,之前标志位置为true //从这里开始回溯,所以就是要考虑不放当前位进入path。标志位置为false,之前添加的当前位要删除掉 visited[i] = false; path.deleteCharAt(path.length() - 1); } } }
1

相关推荐

点赞 评论 收藏
分享
01-08 09:40
中南大学 Java
苏苏加油努力:你的女神不回你消息,并且给别的男生发消息 be like
点赞 评论 收藏
分享
黑皮白袜臭脚体育生:春节刚过就开卷吗?哈基馆,你这家伙......
点赞 评论 收藏
分享
牛客网
牛客企业服务