第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

計(jì)算一組數(shù)字是否順子問(wèn)題

計(jì)算一組數(shù)字是否順子問(wèn)題

規(guī)則: 比如1,2,3,4,5 / 4,5,1,2,3/ 2,3,4,5,1 /5,1,2,3 ,這里最大值是5,最小值是1,逢5就到1了,滿(mǎn)足這樣條件就算順子
查看完整描述

3 回答

?
湖上湖

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊

重新編輯了:

public static boolean isStraight(int[] num, int min, int max) {
    Arrays.sort(num);
    int i;
    for (i = 1; i < num.length; i++) {
        if (num[i] - num[i - 1] != 1) {
            break;
        }
    }
    if (i == num.length) {
        return true;
    }
    for (i = i + 1; i < num.length; i++) {
        if (num[i] - num[i - 1] != 1) {
            return false;
        }
    }
    if (num[num.length - 1] == max && num[0] == min) {
        return true;
    }
    return false;
}

public static void main(String[] args) {
    System.out.println(isStraight(new int[]{1,2,3,5},1,5));
}
查看完整回答
反對(duì) 回復(fù) 2019-03-01
?
慕勒3428872

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超6個(gè)贊

arr.sort((a,b)=>a-b);
arr.every((t,i)=>{
    return i==0?true:t-arr[i-1]==1?true:false
})

更新

//參數(shù),數(shù)組范圍最小值,范圍最大值
var mtest = function(min,max){
    //這里min,max代表順子的最大值與最小值,確定一個(gè)邊界,如1-5
    return arr=>{
        arr.sort((a,b)=>a-b);
        //如果數(shù)組最大值超過(guò)設(shè)定的最大值max,返回錯(cuò)誤提醒
        if(arr[arr.length-1]>max){
            alert("數(shù)組元素最大值超過(guò)預(yù)期,錯(cuò)誤");
            return false;
        }
        var b = arr.every((m,n)=>n==0?true:m-arr[n-1]==1?true:false);
        if(b)return true;//如果傳進(jìn)來(lái)的數(shù)組本身是[2,3,4]這樣的連續(xù)遞增的數(shù)據(jù),返回true
        //走到這里,索命傳進(jìn)來(lái)的數(shù)據(jù)不是連續(xù)的,那么可以判斷沒(méi)有的數(shù)據(jù)是不是連續(xù)的
        //把1-5這幾個(gè)元素看成一個(gè)圓環(huán),取環(huán)上一段連續(xù)的數(shù)據(jù),那么剩下的數(shù)據(jù)也必然是連續(xù)的
        var arr1 = [];
        //從[1,2,3,4,5]中檢測(cè)[1,5,2]少了哪些數(shù)據(jù)
        for(var i=min;i<max+1;i++){
            arr.indexOf(i)<0 && arr1.push(i)
        }
        //arr1得到[3,4],然后檢測(cè)arr1是不是連續(xù)的
        return arr1.every((t,i)=>i==0?true:t-arr1[i-1]==1?true:false)
    }    
}(1,5);

mtest([1,5,2])
mtest([1,5,2,6])
mtest([3,2,4])
查看完整回答
反對(duì) 回復(fù) 2019-03-01
  • 3 回答
  • 0 關(guān)注
  • 744 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)