五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)組頻率統(tǒng)計

2023-08-10 02:22 作者:十三他很帥  | 我要投稿

創(chuàng)建一個對象,其中數(shù)組的唯一值作為鍵,出現(xiàn)頻率作為值。使用 Array.prototype.reduce() 將唯一值映射到對象的鍵,每次遇到相同的值時都會使頻率加1。

統(tǒng)計數(shù)組中唯一值的頻率很容易,但如果數(shù)據(jù)經(jīng)常發(fā)生變化頻率就需要重新計算。為此我們最好創(chuàng)建自定義數(shù)據(jù)結(jié)構(gòu)來存儲數(shù)據(jù)。該數(shù)據(jù)結(jié)構(gòu)將能夠跟蹤其包含的值的頻率并在需要更新它們。以下是實現(xiàn)此類數(shù)據(jù)結(jié)構(gòu)的方法:

  • 由于數(shù)據(jù)結(jié)構(gòu)的操作更像是一個Set,構(gòu)造函數(shù)之后接受一個值數(shù)組。使用 Array.prototype.forEach() 為每個值調(diào)用 add() 方法,填充數(shù)據(jù)結(jié)構(gòu)。

  • 通過繼承來利用內(nèi)置的 Map 類。

  • 擴展Map.prototype.set()以拋出錯誤,防止破壞添加到數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)。

  • 定義一個add()方法,該方法將接收一個值并在數(shù)據(jù)結(jié)構(gòu)中增加其計數(shù),不存在則設(shè)為1。

  • 擴展Map.prototype.delete()以減少數(shù)據(jù)結(jié)構(gòu)中存在的值的計數(shù)。值為1時直接刪除。

  • 定義一個sorted()方法,該方法將返回按頻率排序的值數(shù)組。 使用Array.prototype.sort()按頻率對值進行排序,使用Array.prototype.map()返回值。ascending參數(shù)決定返回數(shù)組的順序。

在這個實現(xiàn)中,我們創(chuàng)建了一個名為FrequencyMap的數(shù)據(jù)結(jié)構(gòu),它繼承了內(nèi)置的Map類。通過添加、刪除和排序方法,我們可以方便地跟蹤和操作存儲在該數(shù)據(jù)結(jié)構(gòu)中的值的頻率。這種自定義數(shù)據(jù)結(jié)構(gòu)對于那些需要高效跟蹤頻率變化的應(yīng)用程序非常有用。

數(shù)組頻率統(tǒng)計的評論 (共 條)

分享到微博請遵守國家法律
呼玛县| 青阳县| 洱源县| 丁青县| 无锡市| 凤翔县| 枝江市| 武清区| 平顺县| 怀来县| 沐川县| 利辛县| 万盛区| 嵊州市| 泰和县| 兴安县| 德格县| 银川市| 屏南县| 中卫市| 洪雅县| 岗巴县| 东台市| 宜丰县| 洛宁县| 稷山县| 中宁县| 饶阳县| 林芝县| 临汾市| 新乡市| 凌海市| 大埔县| 杭锦后旗| 扎兰屯市| 北京市| 三门县| 岢岚县| 财经| 建平县| 邹平县|