首页 > 其他 > 详细

二进制求子集

时间:2020-02-18 11:10:51      阅读:69      评论:0      收藏:0      [点我收藏+]
#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://blog.51cto.com/14472348/2471590

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!