Т.е. отсортировать индексы исходного массива по их значениям и переписать эти индексы в новый массив в качестве значений. Язык php, но главное сам алгоритм.
[Ответ]
В итоге нужен массив, в котором сначала стоят наиболее часто встречающиеся элементы.
т.е. 4, 0, 18, ...
[Ответ]
mikе 19:59 30.07.2008
Сообщение от Коварный план:
Т.е. отсортировать индексы исходного массива по их значениям и переписать эти индексы в новый массив в качестве значений. Язык php, но главное сам алгоритм.
Сообщение от Коварный план:
В итоге нужен массив, в котором сначала стоят наиболее часто встречающиеся элементы.
Все ты правильно делаешь - создаешь $src_array, где индекс===число из последовательности, а элемент - количество появлений. Потом сортируешь с сохранением индексов и после этого значения массива ключей-индексов и будет тем что ты хочешь.
UPD: я ж в примере нарисовал - на значения массива-результата посмотри...
[Ответ]
Коварный план 20:39 30.07.2008
dn2k4, спасибо тебе добрый человек, всё получилось)
[Ответ]
mikе 21:06 30.07.2008
dn2k4, а нафига асорт, в первом случае ассоциации с индексами нафих не нужны (насколько я понял, по крайней мере)
[Ответ]
dn2k4 21:24 30.07.2008
mikе, чистая телепатия =) По первому примеру - там да, то что написано, противоречит тому, что в примере получения... А так - ему индексы, собсно, как уникальные ключи и нужны, их терять нельзя. Я, правда, вначале тоже думал, что можно какой-нить array_flip сделать, а потом сообразил, что если два одинаковых значения массива на разных ключах будут, то что-то тут не так...
[Ответ]