Saya memiliki sekumpulan nilai tidak terikat yang disimpan dalam array (ini adalah NSArray
, jika itu membantu). Nilainya dapat berkisar dari 0 hingga tak terhingga (pada kenyataannya nilai maksimalnya adalah sekitar 100.000.000).
Saya perlu mengurutkan nilai dalam array saya ke dalam skala 0 hingga 20.
Misalnya, jika saya mempunyai kumpulan 1000, 3123, 31
, 31 akan menjadi 0, 1000 akan menjadi 10 dan < strong>3123 akan menjadi 20. Array bervariasi dalam jumlah anggota dan nilai maksimal, jadi saya tahu jika ada banyak nilai dengan rentang berbeda, banyak dari nilai tersebut akan menempati posisi yang sama pada skala. Seringkali, jumlah item akan melebihi 20 (rata-rata jumlah item adalah sekitar 100).
Jika jumlah item lebih dari 20, beberapa item harus memiliki peringkat yang sama.
Saya memerlukan ini untuk representasi visual dari populasi lagu per kueri penelusuran, yang nilai-nilai tersebut merupakan representasi global dari posisi lagu di tangga lagu global.
Apakah mungkin membuat algoritma seperti itu?