491. 递增子序列 回溯法

本文介绍了如何使用回溯法解决491号问题——找到数组的递增子序列。通过递归枚举子序列,并利用set进行去重,以确保升序排列,解题思路清晰,适合中等难度水平的程序员学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

491. 递增子序列

难度:中等
2020/8/25
题目描述
在这里插入图片描述

解题思路

1、抄官方题解

递归枚举子序列的模板:
在这里插入图片描述
对于这个题,判断是否合法就是当前这个选择是不是能和前一个元素组成升序序列
还需要判断是否重复
在这里插入图片描述

/*
					 * 491. 递增子序列
					 * 2020/8/25
					 * 难度:中等
					 */
					public List<List<Integer>> findSubsequences(int[] nums) {
   
   
						List<List<Integer>> res = new ArrayList<>();
						if(nums.length < 2) {
   
   
							return res;
						}
						dfsFindSubsequences(nums,Integer.MIN_VALUE,0,new ArrayList<>(),res);
						return res;

				    }
					public void dfsFindSubsequences(int[
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值