0 / 0 / 1
Регистрация: 09.01.2013
Сообщений: 41
|
||||||
1 | ||||||
Определение временной сложности алгоритма (О символика)20.10.2013, 23:10. Показов 9269. Ответов 30
Метки нет (Все метки)
Подскажите правильно ли так определять верхнюю оценку? Спасибо.
0
|
20.10.2013, 23:10 | |
Ответы с готовыми решениями:
30
О символика (определение временной сложности алгоритма) Определение сложности алгоритма / Pascal Анализ сложности алгоритмов. О-символика Определение временной сложности рекурсивного алгоритма |
Модератор
3051 / 2193 / 459
Регистрация: 26.03.2015
Сообщений: 8,469
|
|
14.05.2017, 23:29 | 21 |
0
|
138 / 7 / 1
Регистрация: 31.03.2015
Сообщений: 395
|
|
15.05.2017, 01:16 | 22 |
Обьяснить можете касательно такой "сложной сложности". Почему там дважды logK - сортировки там не надо. И насколько помню такого варианта не было? А если б надо было создать односвязный результирующий список? О(M*N).
0
|
Модератор
3051 / 2193 / 459
Регистрация: 26.03.2015
Сообщений: 8,469
|
|
15.05.2017, 15:43 | 23 |
Если нужно слить два списка, то быстрее будет их сначала отсортировать.
з.ы. Теоретически, задачу можно сделать за O(N + M), если тупо пройтись по спискам, добавляя их элементы в HashTable... но нужна хорошая Hash функция, чтобы добавление работало за О(1)... то есть, некая зависимость от типа данных.
0
|
138 / 7 / 1
Регистрация: 31.03.2015
Сообщений: 395
|
|
17.05.2017, 00:46 | 24 |
Да не надо так складно -- если для создание односвязного списка сложность O(N*logN+M*logM),
то для придание ему двусвязности, согласно этому коду https://www.quora.com/How-do-y... ist-in-C++, надо лиш лишний проход в количестве M (длина конечного списка может быть иной)-->O(N*logN+M*logM+M)?
0
|
Модератор
3051 / 2193 / 459
Регистрация: 26.03.2015
Сообщений: 8,469
|
|
17.05.2017, 16:44 | 25 |
0
|
138 / 7 / 1
Регистрация: 31.03.2015
Сообщений: 395
|
|
17.05.2017, 20:33 | 26 |
Ну если M*logM ---> M , то тогда вообще формулу можно упростить к O(M+N+M), что наверное неправильно.
0
|
Модератор
3051 / 2193 / 459
Регистрация: 26.03.2015
Сообщений: 8,469
|
|
17.05.2017, 21:16 | 27 |
Не "M*logM ---> M", а "M*logM больше или равно M"
Добавлено через 1 минуту Аналогично O(x2 + x) = O(x2)
0
|
138 / 7 / 1
Регистрация: 31.03.2015
Сообщений: 395
|
|
17.05.2017, 23:09 | 28 |
Да я понял. Через минуту-две спохватился что написал, а что вами имелось ввиду.
Добавлено через 5 минут Думаю самый простой вопрос на тему. Сложность нахождение студента в студенческом журнале -- logN, если учесть что список уже отсортирован по алфавиту? И применим бинарный поиск.
0
|
Модератор
3051 / 2193 / 459
Регистрация: 26.03.2015
Сообщений: 8,469
|
|
18.05.2017, 00:44 | 29 |
0
|
138 / 7 / 1
Регистрация: 31.03.2015
Сообщений: 395
|
|
27.09.2017, 14:04 | 30 |
Тут здесь еще таких два примера появилось, которые у меня представляются со сложностью O(1): первое задание это получение следующего элемента односвязного списка (очереди), и вставка М значений в hash-table? Хотя в первом случае очевидно что значение доступа в общем случае O(n).
0
|
Модератор
3051 / 2193 / 459
Регистрация: 26.03.2015
Сообщений: 8,469
|
|
27.09.2017, 18:49 | 31 |
Следующий элемент: O(1).
Вставка М значений в hash-table: O(М).
0
|
27.09.2017, 18:49 | |
27.09.2017, 18:49 | |
Помогаю со студенческими работами здесь
31
Определение сложности алгоритма Определение сложности алгоритма Оценка временной эффективности алгоритма сортировки Шелла Определение тренда по временной выборке Временной порядок сложности "пузырька" Оценка сложности алгоритма Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |