1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      Java撲克牌順子怎么實現(xiàn)

      本篇內(nèi)容主要講解“Java撲克牌順子怎么實現(xiàn)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Java撲克牌順子怎么實現(xiàn)”吧!

      創(chuàng)新互聯(lián)公司是一家專業(yè)提供禹會企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、H5頁面制作、小程序制作等業(yè)務(wù)。10年已為禹會眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進行中。

      題目

      LL今天心情特別好,因為他去買了一副撲克牌,發(fā)現(xiàn)里面居然有2個大王,2個小王(一副牌原本是54張^_^)...他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定去買體育彩票,嘿嘿!!“紅心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是順子.....LL不高興了,他想了想,決定大\小 王可以看成任何數(shù)字,并且A看作1,J為11,Q為12,K為13。上面的5張牌就可以變成“1,2,3,4,5”(大小王分別看作2和4),“So Lucky!”。LL決定去買體育彩票啦。現(xiàn)在,要求你使用這幅牌模擬上面的過程,然后告訴我們LL的運氣如何, 如果牌能組成順子就輸出true,否則就輸出false。為了方便起見,你可以認為大小王是0。

      分析

      就是一個數(shù)組,0表示大小王,可以當癩子,其他的最小是1,最大是13,求給出的這個數(shù)組能否組成順子。

      我們仔細想想一個正常的順子,比如6,7,8,9,10. 那最大值和最小值差為4,并且不能重復(fù)。所以我們應(yīng)該得出兩個結(jié)論。1,最大值和最小值相差小于等于4,為什么會小于4呢,因為有癩子0導致的。2.除了癩子0以外,其他的數(shù)字不能重復(fù)。

      所以根據(jù)上面的條件我們就可以寫出算法了。求出最小值,最大值。

      重復(fù)數(shù)字怎么判斷呢?先判斷是否為0,不為0,將這個數(shù)字作為腳標存到另一個數(shù)組中,并計數(shù)加1,從而判斷是否重復(fù)。

      解法

      public boolean isContinuous(int [] numbers) {
             int count[]=new int[14];
             if(numbers==null|| numbers.length<1){
                 return false;
             }
             int min=14;
             int max=0;
             for(int i=0;i           if(numbers[i]==0){
                     continue;
                 }else if(count[numbers[i]]>0) {
                //如果存在重復(fù)的數(shù)字就返回false;
                     return false;
                 }else if(numbers[i]                   min=numbers[i];
                 }else if(numbers[i]>max){
                         max=numbers[i];
                 }
                 count[numbers[i]]++;
             }
             if(max-min<5){
                 return true;
             }
             return false;
         }

      測試

      main方法

      public static void main(String[] args) {
             Solution solution=new Solution();
             int array[]={1,5,3,3,4,};
             System.out.println(solution.isContinuous(array));
         }

      Java撲克牌順子怎么實現(xiàn)

      番外

      測試的時候發(fā)現(xiàn)牛客上的這道題測試用例不全。比如我最開始這樣寫的

      for(int i=0;i           if(numbers[i]==0){
                     continue;
                 }else if(numbers[i]==min||numbers[i]== max) {
                  //如果存在重復(fù)的數(shù)字就返回false;
                     return false;
                 }else if(numbers[i]                   min=numbers[i];
                 }else if(numbers[i]>max){
                         max=numbers[i];
                 }
                 count[numbers[i]]++;
             }

      可以看到我通過

      (numbers[i]==min||numbers[i]== max

      來判斷是否存在重復(fù)的數(shù)字,其實這是不正確的,比如我是上面的測試用例1,5,3,3,4就不滿足上面的要求。Java撲克牌順子怎么實現(xiàn)

      到此,相信大家對“Java撲克牌順子怎么實現(xiàn)”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!


      分享題目:Java撲克牌順子怎么實現(xiàn)
      轉(zhuǎn)載來源:http://www.ef60e0e.cn/article/jijhgg.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        徐闻县| 若尔盖县| 滨海县| 惠水县| 周至县| 大英县| 蓝山县| 峡江县| 瓦房店市| 武夷山市| 西平县| 来宾市| 永顺县| 丰台区| 泸溪县| 顺义区| 金溪县| 灵璧县| 射洪县| 同德县| 余庆县| 泗洪县| 阿坝县| 林西县| 介休市| 忻城县| 阜新| 富蕴县| 中江县| 奉节县| 犍为县| 定远县| 朝阳市| 讷河市| 原阳县| 德清县| 通州市| 永康市| 阳西县| 巴东县| 玉山县|