亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

獲取字符串中出現(xiàn)次數(shù)最多的字符

denson / 1019人閱讀

摘要:偶然看到的一個(gè)題目,從一串字符串里獲取出現(xiàn)次數(shù)最多的字符并返回長(zhǎng)度幾番簡(jiǎn)化,用一串代碼解決,如下加入字符串已有下面來個(gè)步驟分析版分割字符數(shù)組去重不支持,換個(gè)簡(jiǎn)單的去重方法二去重后開始獲取我們的字符在字符串中的個(gè)數(shù)每個(gè)字符在里面的個(gè)數(shù)返回一

偶然看到的一個(gè)題目,從一串字符串里獲取出現(xiàn)次數(shù)最多的字符并返回長(zhǎng)度

幾番簡(jiǎn)化,用一串代碼解決,如下:
加入字符串已有:let str = "awfoeifaoifauwefa";

let outcome0 = Array.from(new Set(str.split(""))).map((a,b) => [a,str.match(new RegExp(a,"g")).length]).sort((a,b) => b[1] - a[1]).slice(0,1);
console.log(...outcome0)

下面來個(gè)步驟分析版:

let arr = str.split("");//分割字符
let _arr = Array.from(new Set(arr));//數(shù)組去重

Array.from()不支持IE(supported),換個(gè)簡(jiǎn)單的去重方法二:

arr.sort();
let _arr = [];
for(let i =0;i

去重后開始獲取我們的字符在字符串中的個(gè)數(shù):

let new_arr = _arr.map(function(a,b){
    let count = str.match(new RegExp(a,"g")).length;//每個(gè)字符在str里面的個(gè)數(shù)
    return [a,count];//返回一個(gè)帶有字符和長(zhǎng)度[s,len]的數(shù)組
});
new_arr.sort(function(a,b){
    return b[1] - a[1];//按照字符長(zhǎng)度len從大到小排序
});
let [outcome] = [...new_arr.slice(0,1)];//第一個(gè)數(shù)組的len值最大
console.log(outcome)

最后console的答案是["a",4]

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/84183.html

相關(guān)文章

  • 面試題:尋找一個(gè)符串出現(xiàn)次數(shù)多的字符以及出現(xiàn)次數(shù)

    摘要:要求編寫代碼實(shí)現(xiàn)尋找一個(gè)字符串中出現(xiàn)次數(shù)最多的字符以及出現(xiàn)的次數(shù)。最后只需要在集合中找到值最大的即可。 要求編寫代碼實(shí)現(xiàn):尋找一個(gè)字符串中出現(xiàn)次數(shù)最多的字符以及出現(xiàn)的次數(shù)。 解法一:用刪除法實(shí)現(xiàn) (挺巧妙的一種) public class FindTheMostAppearChar { public static void main(String[] args) { del...

    lei___ 評(píng)論0 收藏0
  • JavaScript初應(yīng)用:找到數(shù)組出現(xiàn)多的字母并給出個(gè)數(shù)以及每一個(gè)所在的位置

    摘要:剛剛接觸一周的時(shí)間,熟悉了最基本的知識(shí),這是自己面對(duì)的第一個(gè)的邏輯性的代碼題目,自己嘗試了寫了,結(jié)果還算可以,因?yàn)橛泻枚嘀R(shí)涉及到了后面的知識(shí),就有點(diǎn)吃力了。以下代碼總結(jié)于網(wǎng)上前輩給出的參考答案和結(jié)合了自己的理解和注釋,請(qǐng)多多指正。 剛剛接觸JS一周的時(shí)間,熟悉了最基本的js知識(shí),這是自己面對(duì)的第一個(gè)js的邏輯性的代碼題目,自己嘗試了寫了,結(jié)果還算可以,因?yàn)橛泻枚嘀R(shí)涉及到了后面的do...

    Zhuxy 評(píng)論0 收藏0
  • JavaScript初應(yīng)用:找到數(shù)組出現(xiàn)多的字母并給出個(gè)數(shù)以及每一個(gè)所在的位置

    摘要:剛剛接觸一周的時(shí)間,熟悉了最基本的知識(shí),這是自己面對(duì)的第一個(gè)的邏輯性的代碼題目,自己嘗試了寫了,結(jié)果還算可以,因?yàn)橛泻枚嘀R(shí)涉及到了后面的知識(shí),就有點(diǎn)吃力了。以下代碼總結(jié)于網(wǎng)上前輩給出的參考答案和結(jié)合了自己的理解和注釋,請(qǐng)多多指正。 剛剛接觸JS一周的時(shí)間,熟悉了最基本的js知識(shí),這是自己面對(duì)的第一個(gè)js的邏輯性的代碼題目,自己嘗試了寫了,結(jié)果還算可以,因?yàn)橛泻枚嘀R(shí)涉及到了后面的do...

    darkerXi 評(píng)論0 收藏0
  • js如何獲取符串出現(xiàn)次數(shù)多的字符

    摘要:再對(duì)的每個(gè)屬性進(jìn)行遍歷,找出出現(xiàn)次數(shù)最多的字符串合集存入數(shù)組,并把數(shù)組打印出來。最后將得到數(shù)組放在返回對(duì)象的屬性中返回出去用對(duì)象返回是為了方便該方法以后的拓展。 我是一個(gè)不太會(huì)表達(dá)的人,所以我盡可能的用代碼來闡釋我的理解和思考,廢話不多說,我就直接放代碼了: function getStingMax(str){ if(typeof str !== string){ ...

    khs1994 評(píng)論0 收藏0
  • 查找字符數(shù)組出現(xiàn)次數(shù)多的字符

    摘要:給定一個(gè)字符數(shù)組,例如找出數(shù)組中出現(xiàn)次數(shù)最多的字符,如果存在相同次數(shù)的字符,取出現(xiàn)較早者。 給定一個(gè)字符數(shù)組,例如char[] chars = { a, b, b, b, b, c, a, a, a};找出數(shù)組中出現(xiàn)次數(shù)最多的字符,如果存在相同次數(shù)的字符,取出現(xiàn)較早者。一個(gè)問題的解決方案有多種: 利用數(shù)據(jù)結(jié)構(gòu)的特性,鏈表保證了插入順序,Map正是我們想要的字符與出現(xiàn)次數(shù)對(duì)應(yīng)關(guān)系的映...

    plus2047 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<