国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

房地產(chǎn)網(wǎng)站大全東莞日增感染人數(shù)超25萬

房地產(chǎn)網(wǎng)站大全,東莞日增感染人數(shù)超25萬,怎么提交網(wǎng)站地圖,怎么創(chuàng)建網(wǎng)站校園表白墻力扣熱題:卡牌分組 一、開篇 今天是備戰(zhàn)藍(lán)橋杯的第22天。這道題觸及到我好幾個知識盲區(qū),以前欠下的債這道題一并補(bǔ)齊,哈希表的遍歷、最大公約數(shù)與最小公倍數(shù),如果你還沒掌握,這道題練起來! 二、題目鏈接:…

? ? 力扣熱題:卡牌分組

一、開篇

?今天是備戰(zhàn)藍(lán)橋杯的第22天。這道題觸及到我好幾個知識盲區(qū),以前欠下的債這道題一并補(bǔ)齊,哈希表的遍歷、最大公約數(shù)與最小公倍數(shù),如果你還沒掌握,這道題練起來!

二、題目鏈接: 914.卡牌分組

三、題目描述在這里插入圖片描述

四、代碼思路

1.由于需要每種卡牌的數(shù)量,我們可以利用桶排或哈希表統(tǒng)計(jì)各種卡牌的數(shù)量,下面代碼使用的是哈希表。
2.題目的分組要求是每組要有相同的牌,且牌的數(shù)量要大于等于2,那可以想成每種卡牌之間的最大公約數(shù)大于等于2,瞬間豁然開朗。
3.這樣,我們只需要遍歷哈希表中所有的值,利用求最大公約數(shù)的函數(shù)求出他們之間的最大公約數(shù)即可

五、重要知識點(diǎn)

遍歷哈希表

Map<Integer, Integer> map = new HashMap<>();
for(Map.Entry<Integer, Integer> entry: map.entrySet()){ //增強(qiáng)for循環(huán)gcd1 = entry.getValue(); //gcd1獲取哈希表的值gcd1 = entry.getKey(); //gcd1獲取哈希表的鍵
}

最大公約數(shù)與最小公倍數(shù)

? 最大公約數(shù):在這個函數(shù)中,如果 x 為0,那么函數(shù)返回 y。否則,函數(shù)將 y 和 x 傳遞給自身,但 x 是 y 對 x 的余數(shù)。這是歐幾里得算法的基本步驟。
? 具體原理大家就自行搜索吧,總之,記住這個函數(shù),最小公倍數(shù)也能很簡單的推出,真不錯!

//最大公約數(shù)
public int gcd(int x, int y){return x == 0 ? y : gcd(y % x, x);
}//最小公倍數(shù):調(diào)用最大公約數(shù)函數(shù)
public int lcm(int x, int y) {return x * y / gcd(x, y); //若有負(fù)數(shù),就取絕對值
}
//擔(dān)心x*y溢出,可以寫成這樣
public int lcm(int x, int y) {int gcd = gcd(x, y);return (x / gcd) * (y / gcd) * gcd;
}

六、代碼純享版

class Solution {public boolean hasGroupsSizeX(int[] deck) {Map<Integer, Integer> map = new HashMap<>();for(int num: deck) {map.put(num, map.getOrDefault(num, 0) + 1);}int gcd1 = -1;for(Map.Entry<Integer, Integer> entry: map.entrySet()){if(gcd1 == -1) gcd1 = entry.getValue();else gcd1 = gcd(gcd1 , entry.getValue());}if(gcd1 >= 2) return true;else return false;}public int gcd(int x, int y){return x == 0 ? y : gcd(y % x, x);}
}

七、代碼逐行解析版

class Solution {public boolean hasGroupsSizeX(int[] deck) {Map<Integer, Integer> map = new HashMap<>();//創(chuàng)建哈希表for(int num: deck) { //遍歷整個數(shù)組map.put(num, map.getOrDefault(num, 0) + 1); //統(tǒng)計(jì)每種卡牌的數(shù)量}int gcd1 = -1; //gcd1用來記錄卡牌之間的最大公約數(shù)for(Map.Entry<Integer, Integer> entry: map.entrySet()){ //遍歷整個哈希表if(gcd1 == -1) gcd1 = entry.getValue(); //gcd1還沒有存值時(shí),存入第一種卡牌的值else gcd1 = gcd(gcd1 , entry.getValue()); //利用函數(shù)求 原先所有卡牌的最大公約數(shù) 與 這個卡牌 的最大公約數(shù)}if(gcd1 >= 2) return true; //當(dāng)gcd1大于等于2時(shí),說明返回題目要求的X>=2,返回trueelse return false; //否則返回false}public int gcd(int x, int y){ //計(jì)算最大公約數(shù)的函數(shù),非常實(shí)用簡潔return x == 0 ? y : gcd(y % x, x);}
}

八、結(jié)語

?如果這道力扣題的分享對您有所幫助,點(diǎn)個關(guān)注,我會每天更新力扣題的講解,與大伙兒一同向前邁進(jìn)!

http://aloenet.com.cn/news/34450.html

相關(guān)文章:

  • 青島專業(yè)網(wǎng)站制作團(tuán)隊(duì)肇慶百度快照優(yōu)化
  • 做宣傳圖冊在什么網(wǎng)站外國黃岡網(wǎng)站推廣平臺
  • 做潤滑油網(wǎng)站圖片直播回放老卡怎么回事
  • 做網(wǎng)站的屬于什么崗位網(wǎng)上推廣賺錢方法
  • wordpress 推薦環(huán)境關(guān)鍵詞seo排名優(yōu)化
  • 自適應(yīng)網(wǎng)站 seo怎么做濟(jì)南網(wǎng)站建設(shè)老威
  • 杭州網(wǎng)站建設(shè)咨詢藍(lán)韻網(wǎng)絡(luò)長尾關(guān)鍵詞挖掘站長工具
  • 中學(xué)生制作的網(wǎng)站網(wǎng)絡(luò)運(yùn)營
  • 做網(wǎng)站需要基礎(chǔ)嗎互聯(lián)網(wǎng)營銷師培訓(xùn)內(nèi)容
  • 品牌設(shè)計(jì)網(wǎng)站怎樣推廣自己的廣告
  • 網(wǎng)站策劃書最后一步怎么做采集站seo提高收錄
  • 寧夏銀川網(wǎng)站建設(shè)游戲app拉新平臺
  • 怎么做網(wǎng)站賺錢廣告營銷案例分析
  • wordpress openbox主題山東服務(wù)好的seo
  • 做彩票網(wǎng)站要什么接口互聯(lián)網(wǎng)推廣與營銷
  • 平面設(shè)計(jì)專用網(wǎng)站臨安網(wǎng)站seo
  • 內(nèi)力網(wǎng)站建設(shè)公司宣傳軟文
  • 做網(wǎng)站頁面的軟件海淀區(qū)seo搜索引擎
  • 網(wǎng)站建設(shè)常用英語網(wǎng)店運(yùn)營
  • 中山做外貿(mào)網(wǎng)站建設(shè)百度小說排行榜完本
  • 做誘惑類cpa網(wǎng)站經(jīng)驗(yàn)百度賬號注冊平臺
  • xp做的網(wǎng)站有連接限制seo優(yōu)化網(wǎng)站技術(shù)排名百度推廣
  • 沒有注冊公司怎么做網(wǎng)站性價(jià)比高seo排名
  • 無錫公司網(wǎng)站建設(shè)電話百度做網(wǎng)站需要多少錢
  • 濰坊市網(wǎng)站建設(shè)公司西部數(shù)碼域名注冊官網(wǎng)
  • 網(wǎng)站優(yōu)化推廣怎么做電商營銷策劃方案
  • 做公司網(wǎng)站需要有座機(jī)嗎微信crm客戶管理系統(tǒng)
  • 企業(yè)網(wǎng)站建設(shè)顧問百度推廣后臺登陸官網(wǎng)
  • 網(wǎng)站用什么語言開發(fā)百度搜索怎么優(yōu)化
  • 淮南北京網(wǎng)站建設(shè)新網(wǎng)站如何推廣