剑指Offer系列-面试题44:判断5个数是否连续

来源:互联网 发布:户外广告液晶屏软件 编辑:程序博客网 时间:2024/06/06 07:31

题目:输入5个数,判断是否连续,0可以替代任何数。

思路:

代码:

public boolean isContinuous(int[] numbers) {if (numbers == null || numbers.length != 5) {return false;}ArrayList<Integer> list = new ArrayList<Integer>();for (int i : numbers) {list.add(i);}Collections.sort(list);int numOf0 = 0;int sumOfNull = 0;// 统计0的个数for (Integer i : list) {if (i == 0) {numOf0++;}}int left = numOf0;int right = left + 1;// 统计间隔的个数while (right < 5) {int tmp = list.get(right) - list.get(left);// 如果两个相邻的数相等,那么就没有顺子if (tmp == 0) {return false;}sumOfNull += tmp - 1;left++;right++;}return numOf0 >= sumOfNull ? true : false;}


0 0
原创粉丝点击