java 判断一个数组中的数值是否连续相邻

*  判断一个数组中的数值是否连续相邻
 *  满足以下条件:   
 *              1.0是例外可以反复出现  0可以通配任何字符
 *              2.相同的数值不会重复出现
 *              3.该数组可以是乱序的
 *  当数组不含有0时满足最大值-最小值=n(数组长度)-1
 *  当数组数组含有0时.满足最大值-最小值<n(数组长度)-1

 *  所以,当最大值最大值-最小值>n(数组长度)-1时,一定不是连续相邻数组

package datastruct.usearray;

public class JudgeAdjacent {
	   private static boolean judege(int a[]) {
		   int min=Integer.MAX_VALUE;
		   int max=Integer.MIN_VALUE;
		 
		   for (int i = 0; i < a.length; i++) {
			  if (a[i]!=0) {
				 if (min>a[i]) {
					min=a[i];
				}
				 if (max
   
   
    
    a.length-1) {
			return false;
		}else {
			return true;
			
		}
		   
	}
        public static void main(String[] args) {
         int a[]={8,5,0,10,6,7,0,0};
			if (judege(a)) {
				System.out.println("该数组是相邻的!");
			}else {
				System.out.println("该数组不是相邻的!");
			}
		}
}

   
   

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值