关注
第一题,回溯找到所有的递增序列,然后每次递归都判断剩下未标记的数字是否严格递减
static int[] book;
static int[] nums;
static int n;
static List<Integer> path = new ArrayList<>();
public static void main(String[] args) {
nums = new int[]{8,6,1,3,2,4,5};
n = nums.length;
book = new int[n];
dfs(0,Integer.MIN_VALUE);
}
public static void dfs(int beg,int pre){
if(check())//每次check一下剩下的数组是否完全递减
System.out.println(path);
for(int i = beg; i < n; i++){//每次从上一个数的下标+1开始
if(book[i] == 0){
if(nums[i] > pre){//如果本次是递增的才继续递归
book[i] = 1;
path.add(nums[i]);
dfs(i+1,nums[i]);
path.remove(path.size()-1);
book[i] = 0;
}
}
}
}
//所有符合的解
[1, 3, 4, 5]
[1, 2, 4, 5]
[1, 4, 5]
查看原帖
2 1
相关推荐
牛客热帖
更多
正在热议
更多
# 笔试 #
2035788次浏览 23190人参与
# 互联网回暖,腾讯要招5000人! #
6260次浏览 90人参与
# 腾讯音乐26届实习 #
150177次浏览 899人参与
# 牛友故事会 #
171087次浏览 2884人参与
# 技术岗笔试题求解 #
25978次浏览 390人参与
# 金融银行面经 #
60725次浏览 482人参与
# 元戎现在香不香 #
65078次浏览 530人参与
# 两会劳动法放大招 #
28782次浏览 482人参与
# 双非应该如何逆袭? #
23949次浏览 830人参与
# bilibili求职进展汇总 #
42754次浏览 444人参与
# 安克创新求职进展汇总 #
20069次浏览 158人参与
# 应届生应该先就业还是先择业 #
84156次浏览 498人参与
# 投格力的你,拿到offer了吗? #
63512次浏览 502人参与
# 我的省钱小妙招 #
5667次浏览 169人参与
# 24届通信硬件秋招薪资爆料 #
75512次浏览 428人参与
# 电网笔面经互助 #
28396次浏览 294人参与
# 能让你振作起来的一句话 #
43319次浏览 365人参与
# 你投递的公司有几家约面了? #
57438次浏览 417人参与
# 如果中了500万,你会离职吗? #
59405次浏览 442人参与
# 网易有道工作体验 #
4914次浏览 19人参与
# 生物制药/化工公司爆料 #
14438次浏览 65人参与
# 我想象的实习vs现实的实习 #
261657次浏览 2105人参与