二进制求子集

#include<iostream>
#include<vector>
using namespace std;
vector<vector<int> > result;
int cnt;
void solution(vector<int> nums)
{
int num=1;
    cnt = (1 << nums.size());
    for(int i = 0; i < cnt; i++)
    {
        vector<int> item;
        for(int j = 0; j < nums.size(); j++)
        {
            if(i & (1 << j))
            {
                item.push_back(nums[j]);
            }
        }
        result.push_back(item);
    }
}
int main()
{
    vector<int> nums;
    nums.push_back(1);
    nums.push_back(2);
    nums.push_back(3);
     solution(nums);
     for(int i = 0; i < cnt; i++)
     {
        if(result[i].size() == 0)
        {
            cout<<"[]";
         }
        for(int j = 0; j < result[i].size(); j++)
        {
            cout<<"["<<result[i][j]<<"]";   
         }
         cout<<endl;
     }
    return 0;
 } 

本文标题:二进制求子集
分享网址:https://www.cdcxhl.com/article2/pjjgic.html

成都网站建设公司_创新互联,为您提供定制开发面包屑导航网站收录企业建站做网站品牌网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

微信小程序开发