五月天青色头像情侣网名,国产亚洲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)計的評論 (共 條)

分享到微博請遵守國家法律
丹巴县| 灵石县| 大连市| 江华| 平湖市| 石屏县| 盘山县| 剑阁县| 孟村| 淳安县| 吴桥县| 井冈山市| 乌审旗| 金溪县| 乌海市| 武平县| 修水县| 突泉县| 沭阳县| 元氏县| 阜新市| 苏尼特右旗| 锦屏县| 天门市| 井冈山市| 都匀市| 蒲江县| 威远县| 浪卡子县| 武威市| 西乌| 库伦旗| 阿城市| 渝中区| 达州市| 江门市| 宁国市| 从江县| 金堂县| 郴州市| 北票市|