1、题目

幂集。编写一种方法,返回某集合的所有子集。集合中不包含重复的元素

说明:解集不能包含重复的子集。

示例:

输入: nums = [1,2,3]
 输出:
[
  [3],
  [1],
  [2],
  [1,2,3],
  [1,3],
  [2,3],
  [1,2],
  []
]

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/power-set-lcci

2、解题思路

[1, 2, 3] 有三位, 用二进制表示就是 000, 001, 010, 011, 100, 101, 110, 111 代表了全部子集。所以我们可以利用位运算来进行求解。

class Solution {public List<List<Integer>> subsets(int[] nums) {List<List<Integer>> returnList = new ArrayList();int total =  1 << nums.length;for(int i = 0;i <total; i++){List<Integer> list = new ArrayList();int temp = i;if(temp != 0){int index = 0;while(temp != 0){if((temp & 1) == 1){list.add(nums[index]);}temp = temp >> 1;index++;}}returnList.add(list);}return returnList;}
}

LeetCode 08.04 幂集相关推荐

  1. leetcode每日一题--前缀树;前缀哈希;深搜;面试题 08.04. 幂集;648. 单词替换面试题 01.09. 字符串轮转;剑指 Offer II 062. 实现前缀树

    leetcode每日一题 ps:今天的每日一题没意思,简单的模拟,自己换一道 面试题 08.04. 幂集 幂集.编写一种方法,返回某集合的所有子集.集合中不包含重复的元素. 说明:解集不能包含重复的子 ...

  2. leetcode面试题 08.04. 幂集(递归)

    幂集.编写一种方法,返回某集合的所有子集.集合中不包含重复的元素. 说明:解集不能包含重复的子集. 示例: 输入: nums = [1,2,3] 输出: [ [3], [1], [2], [1,2,3 ...

  3. 新手C#string类常用函数的学习2018.08.04

    ToLower()用于将字符串变为小写,注意字符串的不可变特性,需要重新赋值给另一个字符串变量. s = s.ToLower();//字符串具有不可变性,转换后需要重新赋值,不可仅有s.ToLower ...

  4. 【跃迁之路】【545天】程序员高效学习方法论探索系列(实验阶段302-2018.08.04)...

    @(跃迁之路)专栏 [跃迁之路]奖励金计划正式开始 从2018.7.1起,[跃迁之路]奖励金计划正式起航,从今以后,每月1日,我会将自己个人上月收入的1%计入[跃迁之路]奖励金池,积累到足够金额后,将 ...

  5. 【2019暑假集训】08.04比赛总结

    比赛思路 2019.08.04[NOIP提高组]模拟 A 组 T1( 锻造 ):显然是DP,再根据期望的线性整理转移方程,但是我一开始并没有很好地划分状态,总是想到做的时候要考虑第一次做,以及从后面回 ...

  6. LeetCode 08字符串转整数09回文数

    维护公众号:bigsai ,点赞再看,养成习惯! 08字符串转整数 题目描述: 分析: 本题主要是字符串的处理.需要注意以下几点: 去除字符前的空字符 第一个有效字符必须是符号或者数字 只能有一个符号 ...

  7. leetcode 2022.04.10 招商银行专场竞赛 D.商店促销活动(dp)

    题目 竞赛:2022招商银行专场竞赛 D题:商店促销活动 n(n<=1e5)件商品, 第i件商品,要么去商店A买,花费ai(ai<=1e4),要么去商店B买,花费bi(bi<=1e4 ...

  8. 2018.08.04 cogs2633. [HZOI 2016]数列操作e(线段树)

    传送门 支持区间加w(i−ql+1)2w(i−ql+1)2,将这个式子直接展开变成区间加wi2+w(ql−1)2+2w(1−ql)iwi2+w(ql−1)2+2w(1−ql)i,再选i做主元,会变成w ...

  9. 2019.08.04 新建随笔

    666 转载于:https://www.cnblogs.com/smallwangmusk/p/11300128.html

  10. JAR文件——2017.08.04

    JAR是什么:Java Archive File,翻译成中文就是Java档案文件.通常JAR文件是一种压缩文件,也被称为JAR包. 具有五大好处: 1 安全 2 压缩,空间小 3 可移植性 4 包封装 ...

最新文章

  1. oracle迁移postsql的,osdba's blog : Oracle迁移PostgreSQL系列文章之二:merge语句
  2. 对象检测目标小用什么模型好_[目标检测] YOLO4论文中文版
  3. 新自然指数出炉,哪些高校表现突出?
  4. opencv30-图像矩
  5. 学习 Python 的 14 张思维导图
  6. python中的模块调用_Python中模块互相调用的例子
  7. CentOS 7伪分布式方式安装Hadoop-2.6.0-cdh5.6.0并且通过主机浏览器访问hadoop工作台
  8. Vue项目中的文件/文件夹命名规范
  9. 计算机网络工程师中级软考试题及答案,软考中级历年真题+章节题库
  10. FileNet 开发资料 官方红皮书
  11. Java-图片处理 Gif转Jpg
  12. 解决mysql1336
  13. 每日单词20110501
  14. 监督学习、无监督学习、半监督学习、强化学习、自监督学习
  15. 在厉害的圈子里耳濡目染 No.110
  16. 微信小程序解决 加载图片出现渲染层网络层错误
  17. CSS FlexBox布局全面详解
  18. word文档生成系列:doc和docx插入多图
  19. 怎么自定义服务器的404,如何自定义404页面
  20. 实时语音如何过质量关?

热门文章

  1. 郭天祥的10天学会51单片机_第十一节
  2. 算法导论答案 16.2-4
  3. java并发编程电子书免费送???
  4. 软件工程导论复习之总体设计
  5. Unity 官方标准资源下载(standard assets)2种方式
  6. 发电厂电气部分第三版pdf_“十三五”普通高等教育本科规划教材 发电厂电气设备及运行(第三版) pdf epub mobi txt 下载...
  7. 超市管理系统软件测试用例图,《天天超市管理系统》所有模块测试用例集.doc...
  8. 新书出版 |《数据库程序员面试笔试宝典》
  9. SAO Utils 农历与股票插件
  10. php10充电宝拆解,【变废为宝拆解】拆解一个正品的小米移动电源10400mAh版