LeetCode77:Combinations[通俗易懂]

LeetCode77:Combinations

大家好,又见面了,我是全栈君。

Given two integers n and k, return all possible combinations of k numbers out of 1 … n.

For example,
If n = 4 and k = 2, a solution is:

[
[2,4],
[3,4],
[2,3],
[1,2],
[1,3],
[1,4],
]
Hide Tags Backtracking

给定一个数n。求1到n之间的全部的k个数的组合。
这个题目能够在纸上画下草图,明显能够用递归求解。递归的终止条件是k=0,而且因为须要将组合保存到集合vector中,还须要使用回溯法来保存数据。
runtime:8ms

class Solution {
public:
    vector<vector<int>> combine(int n, int k) {
        vector<vector<int>> result;
        vector<int> vec;
        helper(1,n,k,vec,result);
        return result;
    }

    void helper(int first,int last,int k,vector<int> & vec,vector<vector<int>> & result)
    {
        if(k==0)
        {
            result.push_back(vec);
            return ;
        }

        for(int i=first;i<=last-k+1;i++)
        {
            vec.push_back(i);
            helper(i+1,last,k-1,vec,result);
            vec.pop_back();
        }
    }

};

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116219.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月24日 下午2:00
下一篇 2022年1月24日 下午3:00


相关推荐

  • linux卸载mysql(完全卸载)[通俗易懂]

    linux卸载mysql(完全卸载)[通俗易懂]//rpm包安装方式卸载查包名:rpm-qa|grep-imysql删除命令:rpm-e–nodeps包名//yum安装方式下载1.查看已安装的mysql命令:rpm-qa|grep-imysql2.卸载mysql命令:yumremovemysql-community-server-5.6.36-2.el7.x86_64查看mysql的其它依赖:rpm…

    2022年6月29日
    29
  • 阿里云API接口调用[通俗易懂]

    阿里云API接口调用[通俗易懂]阿里云针对自己的平台提供了非常丰富的API接口,而且他们有提供openapi可视化服务,非常方便。阿里云openapi地址:https://api.aliyun.com/这里我在查询全部RDS资产

    2022年7月3日
    87
  • DRM2.0 的身份认证过程

    DRM2.0 的身份认证过程前提 nbsp device 端预先保存有若干信任根证书用于验证 RI RI 端同样预先保存若干可信任根证书用于验证 device nbsp 过程 nbsp deviceHello 发送 deviceID 可用的加密算法等参数 RIHello 有一个 trusteddevic 参数 如果带了 device 必须选择可追溯到其中的一个根证书的证书链 registration

    2026年3月17日
    1
  • CentOs6.5升级内核到3.0+[通俗易懂]

    CentOs6.5升级内核到3.0+[通俗易懂]1、查看内核版本 命令: uname -a 2、导入key 命令: rpm –import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 如果报SSL错误, 则需要更新网络安全服务 yum update nss3、安装elrepo的yum源命令:rpm -U…

    2022年6月13日
    30
  • Flume 如何自定义 Mysql Sink?

    Flume 如何自定义 Mysql Sink?前言本文隶属于专栏 1000 个问题搞定大数据技术体系 该专栏为笔者原创 引用请注明来源 不足和错误之处请在评论区帮忙指出 谢谢 本专栏目录结构和参考文献请见 1000 个问题搞定大数据技术体系正文场景描述官方提供的 sink 类型已经很多 但是有时候并不能满足实际开发当中的需求 此时我们就需要根据实际需求自定义某些 sink 如 需要把接受到的数据按照规则进行过滤之后写入到某张 mysql 表中 所以此时需要我们自己实现 MySQLSink 自定义 MysqlSink 步骤 1 根据官方说明自

    2026年3月17日
    2
  • LeetCode – Jump Game

    LeetCode – Jump Game

    2021年12月5日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号