美国华人网FuninUSA_唐人社区_北美华人论坛:找礼品卡,找折扣,找报价,找工作,找内推,找项目,找股票

 找回密码
 立即注册
  • 刘丹称小糯米更黏刘恺威 孙女有表演天赋
  • 曝汪小菲以大S名字开酒店 却因无照营业被罚钱
  • 获应采儿力挺无出轨 陈小春:再辛苦也值了
  • 郑爽后援会已解散 粉丝高层撤职:坚持不住了
  • 邓文迪李冰冰闺蜜聚会 中国女人在纽约
  • 伊能静牵秦昊手逛街 伺候老公血拼抢付钱
  • 赵又廷:自嘲长相不够帅 老婆看亲热戏不吃醋
  • 迪玛希素颜接受采访 进口小哥哥原来长这样
  • “猎鹰9”差点又炸了:发射前13秒紧急停止
  • 王力宏也北漂了?在京打拼3个月惦记家人安康
  • 技术分析师称股市预计3月回调
  • Cowen表示,投资者应该购买苹果股票
  • Tim Hayes :“不可避免的”抛售
  • 花旗对美国经济预测指数下跌
Logo1-800-PetMeds Free Shipping $49Take $10 Off Your First Order w/code: SAVE10 - 234 x 60
ASICS AmericaPagoda Piercing Banner 234x60Sierra Trading Post
搜索
查看: 3017|回复: 4

内推面经 -leetcode一道简单题讨论:给出n,k,列出所有组合可能- 唐人社区|北美华人论 ...

[复制链接]

14

主题

244

帖子

269

积分

注册会员

Rank: 2

积分
269
QQ
发表于 2016-10-28 14:50:02 | 显示全部楼层 |阅读模式
分享到:
{$content}

唐人社区-北美华人论坛-内推面经版-leetcode一道简单题讨论:给出n,k,列出所有组合可能



JobHunting
标 题: leetcode一道简单题讨论:给出n,k,列出所有组合可能


题很简单,就是从n个数(1到n)里挑出k个数,return所有组合可能。我觉得下面有个
地方可以优化成n-depth+1,就不需要再往后面走了,因为这个解不成立,但是OJ上说
是错的,想了下竟然没想明白。有谁指点一下?

class Solution {
public:
void addComb(int n, int depth, int begin, vector& res,
vector& solution){
if (depth==0){
res.push_back(solution);
}
for (int i = begin; i
新浪微博官方账号】美国华人网FunInUSA : 每日滚动更新美国商业投资就业招聘留学移民资讯。
回复 百度谷歌雅虎搜狗搜搜有道360奇虎

举报

22

主题

77

帖子

122

积分

注册会员

Rank: 2

积分
122
QQ
发表于 2016-10-28 15:54:09 | 显示全部楼层
JobHunting
标  题: leetcode一道简单题讨论:给出n,k,列出所有组合可能


题很简单,就是从n个数(1到n)里挑出k个数,return所有组合可能。我觉得下面有个
地方可以优化成n-depth+1,就不需要再往后面走了,因为这个解不成立,但是OJ上说
是错的,想了下竟然没想明白。有谁指点一下?

class Solution {
public:
    void addComb(int n, int depth, int begin, vector<vector<int>>& res,
vector<int>& solution){
        if (depth==0){
            res.push_back(solution);
        }
        for (int i = begin; i <= (n-depth+1); ++i){// i <= n is correct, why
n-depth+1 doesn't work?
            solution.push_back(i);
            addComb(n, depth-1, i+1, res, solution);
            solution.pop_back();
        }
        return;
    }
    vector<vector<int>> combine(int n, int k) {
        vector<vector<int>> res;
        vector<int> solution;
        addComb(n, k, 1, res, solution);
        return res;
    }
};
--

25

主题

92

帖子

153

积分

注册会员

Rank: 2

积分
153
QQ
发表于 2016-10-28 16:38:24 | 显示全部楼层
JobHunting
标  题: Re: leetcode一道简单题讨论:给出n,k,列出所有组合可能


yes, thanks.
【 在 sapphirewing (Audrey的树) 的大作中提到: 】
: 不是“错”吧
: 而是cannot terminate吧
: 你在
: if (depth==0){
:     res.push_back(solution);
: }
: 这里就该return了
: 否则depth变成负的,你的(n-depth+1) 超越n,永远跑不完



--

29

主题

101

帖子

167

积分

注册会员

Rank: 2

积分
167
QQ
发表于 2016-10-28 17:42:03 | 显示全部楼层
JobHunting
标  题: Re: leetcode一道简单题讨论:给出n,k,列出所有组合可能


不是“错”吧
而是cannot terminate吧

你在
if (depth==0){
    res.push_back(solution);
}
这里就该return了
否则depth变成负的,你的(n-depth+1) 超越n,永远跑不完
--

20

主题

1174

帖子

2319

积分

金牌会员

Rank: 6Rank: 6

积分
2319
QQ
发表于 2016-11-25 13:14:52 | 显示全部楼层
不错 支持一个了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

美国华人网|唐人社区|什么值得买FunInUSA.net发布的内推面经 -leetcode一道简单题讨论:给出n,k,列出所有组合可能- 唐人社区|北美华人论 ...帖子由网友提供或转载于网络,若发布的内推面经 -leetcode一道简单题讨论:给出n,k,列出所有组合可能- 唐人社区|北美华人论 ...侵犯了您的权益,请联系我们.
Sasa.com

Copyright ©2011 FunInUSA.NET All Right Reserved.  Powered by Discuz! X3.0 小黑屋

本站信息均由会员发表,不代表美国华人网FunInUSA|唐人社区的立场,如侵犯了您的权利请发帖投诉  技术支持: 美国华人网FunInUSA|唐人社区

安全联盟认证 安全联盟认证

快速回复 返回顶部 返回列表