关注
第四题,降序或升序最小的取法 import java.util.ArrayList; import java.util.Scanner; public class Main { private static int min = Integer.MAX_VALUE; public static void main(String[] args) { Scanner scan =new Scanner(System.in); int n =scan.nextInt(); min=n; int[] list =new int[n]; for(int i =0;i<n;i++) { list[i]=scan.nextInt(); } search(list,0); System.out.println(min); } private static void search(int[] integers,int count) { count++; if(count>min) return; ArrayList<Integer> copy =new ArrayList<Integer>(); for(Integer i :integers) { copy.add(i); } //升序规则 for(int i=integers.length-1;i>=0;i--) { if(i==0) { if(integers[i]>Integer.MIN_VALUE) { copy.remove(i); } }else if(integers[i]>integers[i-1]) { copy.remove(i); } } if(copy.size()==0) { if(count<min) { min=count; } return; } int[] copyArray = new int[copy.size()]; for(int i =0;i<copy.size();i++) { copyArray[i]=copy.get(i); } search(copyArray,count); copy.clear(); for(Integer i :integers) { copy.add(i); } //降序规则 //升序规则 for(int i=integers.length-1;i>=0;i--) { if(i==0) { if(integers[i]<Integer.MAX_VALUE) { copy.remove(i); } }else if(integers[i]<integers[i-1]) { copy.remove(i); } } if(copy.size()==0) { if(count<min) { min=count; } return; } copyArray = new int[copy.size()]; for(int i =0;i<copy.size();i++) { copyArray[i]=copy.get(i); } search(copyArray,count); } }
查看原帖
点赞 11
相关推荐
牛客热帖
更多
正在热议
更多
# 对2025年忏悔 #
2652次浏览 80人参与
# 春招前还要继续实习吗? #
2522次浏览 42人参与
# 实习没人带,苟住还是跑路? #
9115次浏览 213人参与
# 面试官问过你最刁钻的问题是什么? #
6725次浏览 83人参与
# 元旦假期你打算怎么过 #
6044次浏览 153人参与
# 运营来爆料 #
72313次浏览 454人参与
# 腾讯音乐求职进展汇总 #
145449次浏览 1039人参与
# 一人说一家双休的公司 #
5314次浏览 84人参与
# 大家实习都在做什么? #
7346次浏览 80人参与
# 我们是不是被“优绩主义”绑架了? #
7843次浏览 273人参与
# 阿里求职进展汇总 #
443709次浏览 3919人参与
# 如何提高实习转正率? #
72935次浏览 463人参与
# 电网笔面经互助 #
56830次浏览 470人参与
# 毕业论文怎么查AI率 #
70184次浏览 1941人参与
# 牛客2025仙途报告 #
33145次浏览 450人参与
# 实习期间如何提升留用概率? #
217557次浏览 1729人参与
# 腾讯工作体验 #
548018次浏览 3657人参与
# 非技术2024笔面经 #
451425次浏览 4918人参与
# 你做过哪些dirty work #
25135次浏览 155人参与
# 参加过提前批的机械人,你们还参加秋招么 #
105529次浏览 1649人参与

