最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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)計的評論 (共 條)

分享到微博請遵守國家法律
保康县| 龙川县| 诸城市| 临清市| 阳春市| 西平县| 周口市| 长兴县| 新源县| 海南省| 嘉定区| 石泉县| 林芝县| 孟连| 灵山县| 诸暨市| 城市| 平山县| 沽源县| 彭水| 镇雄县| 申扎县| 那曲县| 萝北县| 奉贤区| 琼海市| 乐清市| 麟游县| 增城市| 昭通市| 平顺县| 兴义市| 鸡东县| 锡林浩特市| 胶南市| 桐庐县| 沂源县| 孝感市| 红安县| 普格县| 扎鲁特旗|