关注
第四题,降序或升序最小的取法 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
相关推荐

点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 从顶到拉给所有面过的公司评分 #
17011次浏览 155人参与
# 机械人春招想让哪家公司来捞你? #
357095次浏览 3108人参与
# 为了求职,我做过的疯狂伪装 #
11644次浏览 206人参与
# 晒晒你的中秋福利 #
14922次浏览 96人参与
# 职场破冰,你们都聊什么? #
6578次浏览 66人参与
# bilibili求职进展汇总 #
87212次浏览 793人参与
# 工作压力大怎么缓解 #
104940次浏览 1050人参与
# 大家实习每天都在干啥 #
88839次浏览 518人参与
# 广联达求职进展汇总 #
10829次浏览 50人参与
# 机械人怎么评价今年的华为 #
208731次浏览 1524人参与
# 秋招OC许愿 #
346037次浏览 2525人参与
# 你的公司给实习生发中秋礼物吗 #
1455次浏览 26人参与
# 你面试被问到过哪些不会的问题? #
20408次浏览 783人参与
# 聊聊这家公司值得去吗 #
555967次浏览 3693人参与
# 电网笔面经互助 #
46545次浏览 431人参与
# 宣讲会你有哪些意向不到的收获 #
1081次浏览 20人参与
# 秋招的嫡长offer #
28257次浏览 266人参与
# 你觉得早上几点上班合适? #
82395次浏览 330人参与
# 秋招报数:你投了多少家公司? #
28029次浏览 290人参与
# 实习要如何选择和准备? #
114641次浏览 1436人参与