Leetcode--78. 子集

给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。

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

示例:

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

思路:回溯法

提交的代码:

给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。

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

示例:

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

提交的代码:

class Solution {
    public static List<List<Integer>> subsets(int[] nums) {
       // Arrays.sort(nums);
        List<List<Integer>> result = new ArrayList();
        List<Integer> list = new ArrayList();
        result = find(0,nums,list,result);
        return result;
    }
    public static List<List<Integer>> find(int begin,int[] nums,List<Integer> list,List<List<Integer>> result)
    {
        int i;
        result.add(new ArrayList(list));
        for(i=begin;i<nums.length;i++)
        {
            list.add(nums[i]);
            find(i+1,nums,list,result);
            list.remove(list.size()-1);
        }
        return result;
    }
}

完整的代码:

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Solution78 {
    public static List<List<Integer>> subsets(int[] nums) {
       // Arrays.sort(nums);
        List<List<Integer>> result = new ArrayList();
        List<Integer> list = new ArrayList();
        result = find(0,nums,list,result);
        return result;
    }
    public static List<List<Integer>> find(int begin,int[] nums,List<Integer> list,List<List<Integer>> result)
    {
        int i;
        result.add(new ArrayList(list));
        for(i=begin;i<nums.length;i++)
        {
            list.add(nums[i]);
            find(i+1,nums,list,result);
            list.remove(list.size()-1);
        }
        return result;
    }
    public static void main(String[] args)
    {
        int[] nums = {1,2,3};
        List<List<Integer>> list = new ArrayList();
        list = subsets(nums);
        Iterator<List<Integer>> it = list.iterator();
        int count = 1;
        while(it.hasNext()) {
            Iterator<Integer> itt = it.next().iterator();
            //System.out.println(" "+count+" ");
            while(itt.hasNext()) {
                System.out.print(itt.next()+" ");
            }
            System.out.println();
        }

    }
}
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485888.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能皇冠上的明珠:自然语言处理简介、最新进展、未来趋势

来源&#xff1a;图灵人工智能 编辑&#xff1a;TJUNLP 自然语言处理&#xff08;Nature Language Processing&#xff0c;NLP&#xff09;被誉为“人工智能皇冠上的明珠”&#xff0c;一方面表明了它的重要性&#xff0c;另一方面也显现出了它的技术难度。本文整理了自然语言…

realloc 用方法

realloc 用方法 void* realloc(void*, n) 根据n的大小&#xff0c;如果n比较小&#xff0c;就沿用原来的内存地址&#xff08;也就是返回的地址就是原来的地址&#xff09;&#xff0c;在原来地址的内存空间的最后面&#xff0c;加上n大小的内存空间&#xff1b;如果n比较大&am…

Leetcode--90. 子集Ⅱ

给定一个可能包含重复元素的整数数组 nums&#xff0c;返回该数组所有可能的子集&#xff08;幂集&#xff09;。 说明&#xff1a;解集不能包含重复的子集。 示例: 输入: [1,2,2] 输出: [ [2], [1], [1,2,2], [2,2], [1,2], [] ] 思路&#xff1a;相比第78题&…

Yoshua Bengio:深度学习的未来需要“探索高级认知的归纳偏置”

来源&#xff1a;AI科技评论 编译&#xff1a;Mr Bear本文介绍了Yoshua Bengio及其学生Anirudh Goyal近期发表的一篇论文&#xff0c;该论文围绕“归纳偏置”概念&#xff0c;展开了对当下人工智能研究现状的讨论&#xff0c;并提出了富有启发性的观点&#xff1a;不同的深度学…

毕业季

真高兴。 一个懦弱了大学四年的人&#xff0c;竟然破天荒地跑去跟喜欢的女孩子表白。 他依然害怕知道结果&#xff0c;但他不后悔。 转载于:https://www.cnblogs.com/can-i-do/p/9164173.html

头发剪短了要快速生发_怎样生发效果最好最快?四个方法快速长出头发!

脱发问题导致很多人头发稀少、头发细软油腻&#xff0c;这些症状&#xff0c;让患者时常感到十分的痛苦&#xff0c;因为他们每天都要面临被调侃和取笑的尴尬&#xff0c;不仅个人形象全无&#xff0c;更是饱受严重的自卑心理&#xff0c;甚至因为脱发问题&#xff0c;总是给人…

AI求解薛定谔方程,兼具准确度和计算效率,登上《自然-化学》

来源&#xff1a;机器学习研究组订阅号即使并非物理学界人士&#xff0c;我们也对薛定谔这个名字并不陌生&#xff0c;比如「薛定谔的猫」。著名物理学家埃尔温 薛定谔是量子力学奠基人之一&#xff0c;他在 1926 年提出的薛定谔方程&#xff08;Schrdinger equation&#xff…

老鼠喝药水

已知有11瓶无色无味的药水&#xff0c;其中有1瓶有毒并且其他10瓶无毒&#xff0c;喝了有毒的药水后会在23个小时之后的一个小时内毒发身亡&#xff08;死亡时间在1个小时内随机&#xff09;。现在有4只老鼠&#xff0c;如何在一天之内(第二天)找出这瓶有毒的药水&#xff1f; …

整个trick

数据输入方面:1.image pyramid 图像金字塔.目前代码里是先选取一个scale,然后在每个GPU上按照scale读图片,相应的gt也更改."scales":[440, 520, 600, 680, 760] 使用的是短边的缩放到的尺寸,还用个maxsize限制了你的scale必须小于一个值 wk的代码和原本的sensenet很大…

redis修改端口号后还是占用6379_Redis分布式缓存分布式集群搭建

当你试图解决一个你不理解的问题时,复杂化就产成了。—Andy BootheRedis集群安装部署Redis是一个运行在内存的非关系型数据库&#xff0c;因为其速度快(效率高)&#xff0c;支持数据的持久化(安全)&#xff0c;事务操作的原子性(所有操作的原子性)&#xff0c;使得其在高并发场…

千禧年大奖难题之始与未终

来源&#xff1a;数学文化撰文&#xff1a;Arthur Michael Jaffe、薛博卿“千禧年大奖难题”的诞生千禧之际&#xff0c;万象更新&#xff0c;数学界的柔风细雨中惊响起初夏的雷鸣。七个重要的数学问题&#xff01;七百万美元的巨额奖金&#xff01;克雷数学研究所公布的大奖难…

Leetcode--120. 三角形最小路径和

给定一个三角形&#xff0c;找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。 例如&#xff0c;给定三角形&#xff1a; [ [2], [3,4], [6,5,7], [4,1,8,3] ] 自顶向下的最小路径和为 11&#xff08;即&#xff0c;2 3 5 1 11&#xff0…

个人做的一些小工具分享

RCTRL键位替代鼠标右键 检测断网休眠工具 单机截图转载于:https://www.cnblogs.com/toumingbai/p/9166443.html

linux mysql 5.6.14_CentOS 6.4下编译安装MySQL 5.6.14

配置用户MySQL启动成功后&#xff0c;root默认没有密码&#xff0c;我们需要设置root密码。设置之前&#xff0c;我们需要先设置PATH&#xff0c;要不不能直接调用mysql修改/etc/profile文件&#xff0c;在文件末尾添加PATH/usr/local/mysql/bin:$PATHexport PATH关闭文件&…

全世界最前沿的125个科学问题

来源&#xff1a;世界先进制造技术论坛在庆祝Science创刊125周年之际&#xff0c;Science公布了125个最具挑战性的科学问题。了解前沿科学研究方向&#xff0c;对你的成长或许有所帮助。简单归纳统计这125个问题&#xff0c;其中涉及生命科学的问题占46%&#xff0c;关系宇宙和…

Leetcode--215. 数组中第K个最大元素

在未排序的数组中找到第 k 个最大的元素。请注意&#xff0c;你需要找的是数组排序后的第 k 个最大的元素&#xff0c;而不是第 k 个不同的元素。 示例 1: 输入: [3,2,1,5,6,4] 和 k 2 输出: 5 示例 2: 输入: [3,2,3,1,2,4,5,5,6] 和 k 4 输出: 4 说明: 你可以假设 k 总是…

解读阿里官方代码规范

2017年开春&#xff0c;阿里对外公布了「阿里巴巴Java开发手册」从头到尾浏览了一遍这份手册之后&#xff0c;感觉很棒。虽然其中的某些观点笔者不能苟同&#xff0c;但大部分的规范还是值得绝大多数程序员学习和遵守的。 笔者将对这份代码规范中的一些细节做一些解读&#xff…

知识图谱下一站:认知智能

来源&#xff1a;华东师大ICA本文系首届“认知智能”研讨会讨论部分会议纪要。首届“认知智能”研讨会&#xff0c;由华东师范大学计算机学院主办&#xff0c;于12月8日在华东师范大学中山北路校区办公楼小礼堂成功举办。会中多位专家学者进行了学术报告&#xff0c;并围绕认知…

mysql常见错误解决方法_mysql常见错误解决办法

解决mysql利用二进制日志恢复数据报错&#xff1a;ERROR 1781 (HY000) at line 16: SESSION.GTID_NEXT cannot be set to UUID:NUMBER when GLOBAL.GTID_MODE OFF.解决办法&#xff1a;配置gtid选项配置前&#xff1a;mysql> show global variables like ‘gtid_mode‘;ERR…

win10 git bash 闪退

使用ghost重装了win10 专业版后。安装git&#xff0c;尝试重装了n个版本的git,右键git bash here 直接闪退&#xff0c;直接进入安装目录打开git-bash.exe依旧闪退&#xff0c; git右键点击Git Bash Here闪退并会在当前目录下生成mintty.exe.stackdump文件。 右键GIT GUI here错…