|
|
|
алгоритм группировки последовательности чисел
|
|||
|---|---|---|---|
|
#18+
Добрый день, хочу попросить у вас совета в решении следующей задачи: Имеем последовательность целых чисел > 0, упорядоченную по-возрастанию, например: 3, 4, 5, 8, 9, 11, 12, 13, 14, 25 Необходимо записать последовательность в сокращенном виде, заменив все цепочки чисел, идущих по порядку в виде нижняя_граница-верхняя_границу. Для приведенного примера результат должен выглядеть следующим образом: 3-5, 8, 9, 11-14, 25 Поделитесь, пожалуйста, своим видением оптимального алгоритма для реализации данной операции, мне в голову не приходит ничего лучше последовательного перебора-перебора-перебора, но формализовать не удается. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2011, 00:44 |
|
||
|
алгоритм группировки последовательности чисел
|
|||
|---|---|---|---|
|
#18+
забыл добавить, все числа встречаются только 1 раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2011, 00:48 |
|
||
|
алгоритм группировки последовательности чисел
|
|||
|---|---|---|---|
|
#18+
один проход. Запоминать число. Сравнивать число со следующим. Если следующее != текущее + 1, то вот она цепочка - от запомненного до текущего. Запомненное перезаписать следующим и далее как раньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2011, 01:07 |
|
||
|
алгоритм группировки последовательности чисел
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2011, 01:10 |
|
||
|
алгоритм группировки последовательности чисел
|
|||
|---|---|---|---|
|
#18+
Спасибо за помощь, вот, что у меня вышло: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Если кому интересно, в приложенном файле реализация на java ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2011, 03:09 |
|
||
|
алгоритм группировки последовательности чисел
|
|||
|---|---|---|---|
|
#18+
abc_daСпасибо за помощь, вот, что у меня вышло: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Если кому интересно, в приложенном файле реализация на java Несколько мыслей. 1) Мне кажется StringBuilder не нужен. Можно на ходу формировать System.out. Это даст возможность обработать последовательности бесконечно большие. 2) Заглядывание вперёд ( nums[i+1] ) это дурной тон. Мне кажется если этот конечный автомат адаптировать под обращение только к nums[i] алгоритм станет более концептуальным. И также можно поточно читать исходные данные через System.in ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2011, 17:29 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=78&tid=1342665]: |
0ms |
get settings: |
9ms |
get forum list: |
23ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 399ms |

| 0 / 0 |
