Her bir sayının 'ağırlığına' dayalı olarak bir sayı dizisini sıralamak için bir işlev oluşturmalıyım - 'weight', birlikte eklenen sayıların rakamlarıdır (99'un ağırlığı 18 olur. 100 ağırlığı 1, vb vs olacaktır. Bu, "100 54 32 62"
dizesinin "100 32 62 54"
değerini döndüreceği anlamına gelir.Bir dizi nasıl sıralandığını temel alarak nasıl sıralanır? (Javascript)
ben kullanarak gayet güzel bu sayıların ağırlıkları dizisi alabilirsiniz: add
sadece jenerik ekleme fonksiyonudur
function orderWeight(str) {
var arr = str.split(" ");
var sortArr = [];
arr.forEach(t => sortArr.push(t.split("").map(s => parseInt(s, 10)).reduce(add, 0)));
}
. Yukarıdaki örnek için sortArr
, [1, 9, 5, 8]
olacaktır.
arr
dizgideki orijinal sayıların dizisini, sortArr
numaralı numaraların yeni dizilerinin nasıl sıralanacağına bağlı olarak sıralamak için en iyi yolu nedir?
Teşekkürler!
Bir çekicilik gibi çalıştı! Teşekkürler. Özyinelemeli uygulama – joh04667
OP kullanarak –
@Sterling gibi ES6 sözdizimini göstermek için bunu düzenlemelisiniz - Ne demek istediğimi bilmiyorum, lütfen yanıtı güncelleştirebileyim ... teşekkürler – Will