我正在尋找最佳解決此問題的最佳解決方案。將包含數組的字典排序爲值和排名
var sourceDictionary = {
"200" : [
[ "a", 5 ],
[ "al", 6 ],
[ "xl", 8 ]
],
"201" : [
[ "b", 2 ],
[ "al", 16 ],
[ "al", 26 ],
[ "al", 9 ],
[ "al", 3 ]
],
"202" : [
[ "lm", 7 ]
]
}
我要排序基於包含在每個鍵的整數值的字典,然後排列每一個值,如圖中outputputDictionary。
var targetDictionary = {
"200" : [
[ "a", 5, "rank-7" ],
[ "al", 6, "rank-6" ],
[ "xl", 8, "rank-4" ]
],
"201" : [
[ "b", 2, "rank-9" ],
[ "al", 16, , "rank-2" ],
[ "al", 26, "rank-1" ],
[ "al", 9, "rank-3" ],
[ "al", 3, "rank-8" ]
],
"202" : [
[ "lm", 7, "rank-5" ]
]
}
例如[ "al", 26, "rank-1" ]
。這是等級1,因爲26是所有其他值中最大的等級。
JavaScript是最好最佳的解決方案,最優選language.Looking
你有沒有嘗試這種解決自己呢? – zfrisch
我的方法很正常...循環訪問字典,將所有數組收集在一個變量中(並保留引用),然後對它們進行排序,分配等級並將其轉換回願意的目標結構......其中很多操作,如果我認爲字典中有五十萬個鍵,我的方法真的很糟糕......因此尋找任何有更好方法的人 – gully
你可能有一個錯誤,沒有'rank-7'。它是故意的還是錯誤的? –