当前位置: 首页 > wzjs >正文

淘宝客网站怎么做优化下载百度浏览器

淘宝客网站怎么做优化,下载百度浏览器,海淀深圳网站建设公司,网站没收录要怎么做审题&#xff1a; 本题需要我们将题目给定数组的所有子集枚举起来 思路&#xff1a; 方法一&#xff1a;二进制枚举 枚举对象&#xff1a;0到1<<n -1的整形数据 枚举顺序&#xff1a;顺序 枚举方式&#xff1a;二进制枚举 在解释二进制枚举的方法之前&#xff0c;我们先看…

审题:

本题需要我们将题目给定数组的所有子集枚举起来

思路:

方法一:二进制枚举

枚举对象:0到1<<n -1的整形数据

枚举顺序:顺序

枚举方式:二进制枚举

在解释二进制枚举的方法之前,我们先看看0~8的数字的二进制有什么特点

如果我们将0值定义为该索引位置不选,1定义为该索引位置可选。那么此时对于数字0~7的二进制情况,我们发现恰好完成了子集的枚举。

例子解释:

比如对于0数字,0~2的索引位置值都为0,说明这是三个数字都不选的情况

对于1数字,0索引位置值为1,其他位置值为0,说明这是只选择索引为0的数字的情况

其他数字情况也是同理

疑问:我们需要的数字范围是多少才能完全覆盖所有子集情况?

范围是0到(1<<n) -1。

我们先以给定数据个数为3举例,我们发现当数为8时,二进制的倒数第四位就有1了,说明到7的时候已经完成了数据个数为3所有的遍历。而8就是由1左移3位得到的,7是由8-1得到的。也就是说最远的遍历边界就是(1<<n)-1

综上,解题思路如下:

首先将需要遍历到的数依次取出,然后根据这些数的不同二进制位数值情况对子集进行数据插入。

当前子集插入完成后将子集放入二维的结果数组中,全部插入完成就直接返回结果数组

解题:

vector<vector<int>> subsets(vector<int>& nums) { int n = nums.size();vector<vector<int>> vv;//二进制枚举所有情况for(int i = 0; i < (1<<n); i++){vector<int> tmp;//对数的选择进行展开for(int j = 0; j < n; j++){//二进制值对应位置为1就插入子集if(i>>j & 1) tmp.push_back(nums[j]);}vv.push_back(tmp);}return vv;}

78. 子集 - 力扣(LeetCode)

http://www.dtcms.com/wzjs/408956.html

相关文章:

  • 和两个黑人同时做网站seo诊断分析在线工具
  • 网站开发属于软件开发网络推广和运营的区别
  • python网站开发的优势在线crm
  • 个人网站怎么做打赏温州seo外包公司
  • 个人网站二级域名做淘宝客策划品牌全案
  • 网站轮播图能用什么软件做汕头网站快速优化排名
  • 门户网站创新的方式有网络营销工具体系
  • 衡州网站建设seo百度搜索推广操作简要流程
  • 重庆建设门户网站百度一下1688
  • 做盗版电影网站后果nba实力榜最新排名
  • 设计asp网站百度小程序优化
  • 网站建设免公司网络推广的作用
  • qq做我女朋友好吗网站潍坊网站建设咨询
  • 金华市住房和城乡建设局网站百度建一个网站多少钱
  • 郑州做网站软件seo试用软件
  • 网站301做排名百度竞价推广
  • c#可以做网站吗seo关键词排名工具
  • 铜川做网站电话最近重大新闻头条
  • 深圳定制型网站建设河南做网站的
  • 宁夏做网站建设公司品牌策划ppt案例
  • 厂房网行业门户网站建设策划方案ppt福州seo建站
  • wordpress跳转手机站新的网络推广方式
  • 党建联盟网站建设情况抚顺网络推广
  • 网页制作软件ai优化品牌seo关键词
  • 高清摄影作品网站外贸网站建设平台
  • 企业做网站系统网络广告销售
  • 网站如何做线下推广百度电商平台app
  • 最新网站源码网络推广项目计划书
  • 苏华建设集团网站自己如何做网站
  • 网站源码使用seo关键词优化报价