Запитання з тегом «algorithms»

Алгоритм - це послідовність чітко визначених кроків, яка визначає абстрактне рішення проблеми. Використовуйте цей тег, коли ваше питання пов’язане з розробкою та аналізом алгоритмів.

6
за O (n) час: Знайдіть найбільший елемент у множині, де порівняння не є перехідним
Назва зазначає питання. У якості вхідних даних у нас є список елементів, які ми можемо порівняти (визначити, який найбільший ). Жоден елемент не може бути рівним. Ключові моменти: Порівняння не є транзитивним (подумайте ножиці з паперової папери): це може бути правдою: A> B, B> C, C> A (зауважте, що це …


4
Книга для алгоритмів за межами Кормена
Я закінчив більшість матеріалів у книзі «Вступ до алгоритмів» Кормена, і шукаю книгу алгоритмів, яка охоплює матеріал поза книгою Кормана. Чи є якісь рекомендації? ПРИМІТКА. Я запитав це на стартовому потоці, але не був дуже задоволений відповіддю. ПРИМІТКА. Переглядаючи більшість коментарів, я думаю, що в ідеалі я хотів би знайти …

3
Чи існує алгоритм, який знаходить відсортовані підряди розміром три за час?
Я хочу довести або спростувати існування алгоритму, який, маючи масив цілих чисел, знаходить три індекси і такі, що і (або виявляє, що такої потрійності немає) у лінійному часі.i , j k i < j < k A [ i ] < A [ j ] < A [ k ]АAAi …

1
Стиснення доменних імен
Мені цікаво, як можна дуже компактно стиснути домен довільного імені хоста IDN (як визначено RFC5890 ) і підозрювати, що це може стати цікавою проблемою. Ім'я хоста або доменного імені Unicode (U-label) складається з рядка символів Unicode, як правило, обмежених однією мовою залежно від домену верхнього рівня (наприклад, грецькі літери під …

3
Як чітко сформулювати обчислювальну задачу?
Я часто взаємодію з людьми, які хочуть попросити алгоритм обчислювальної проблеми (або її складності), але вони не висловлюють це суворо, щоб ми (комп'ютерні фахівці) зрозуміли це. Посилання на книги, такі як CLRS, не є корисним, оскільки приклади зазвичай мають досить простий спосіб суворого викладу, наприклад, враховуючи список суміжності графа та …

3
Практичні програми сортування Radix
Теоретично сортування Radix дуже швидко, коли ви знаєте, що ключі знаходяться у певному обмеженому діапазоні, скажімо, наприклад, значень у діапазоні . Якщо ви просто конвертуєте значення в базу яка займає час, зробіть базу radix сортування, а потім перетворіть назад у початкову базу для загального алгоритму .ннn[ 0 … nк- 1 …

2
Отримання негативного циклу за допомогою Bellman Ford
Я повинен знайти негативний цикл у спрямованому зваженому графіку. Я знаю, як працює алгоритм Беллмана Форда, і це говорить мені, чи є недоступний негативний цикл. Але це прямо не називає. Як я можу отримати фактичний шлях циклу?v1,v2,…vk,v1v1,v2,…vk,v1v1, v2, \ldots vk, v1 Після застосування стандартного алгоритму ми вже зробили ітерацій, і …

1
Чи виявлення «подвійних» арифметичних прогресій 3SUM-жорстке?
На це надихає питання інтерв'ю . Нам дається масив цілих чисел і ми повинні визначити, чи є чіткі такі, що i < j < ka1,…,ana1,…,ana_1, \dots, a_ni<j<ki<j<ki \lt j \lt k ak−aj=aj−aiak−aj=aj−aia_k - a_j = a_j - a_i k−j=j−ik−j=j−ik - j = j - i тобто послідовності і обидва знаходяться …

1
Проблеми, для яких алгоритми на основі уточнення розділів працюють швидше, ніж у лінійний час
Уточнення розділів - це техніка, в якій ви починаєте з кінцевого набору об'єктів і поступово розділяєте набір. Деякі проблеми, як мінімізація DFA, можна вирішити за допомогою доопрацювання розділів досить ефективно. Я не знаю жодних інших проблем, які зазвичай вирішуються за допомогою уточнення розділів, окрім перелічених на сторінці Вікіпедії. З усіх …

3
Наскільки важко знайти дискретний логарифм?
Дискретний логарифм такого ж , як знаходження в , дан , і .bbbab=cmodNab=cmodNa^b=c \bmod Nc NaaacccNNN Мені цікаво, у яких групах складності (наприклад, для класичних та квантових комп’ютерів) це і які підходи (тобто алгоритми) найкращі для виконання цього завдання. Наведене вище посилання на вікіпедію насправді не дає дуже конкретних умов …

4
Як за допомогою жадібного алгоритму знайти послідовність, що зменшується, найближчу до заданої?
Вам дано n цілих чисел всі від до . Під кожним цілим числом слід записати ціле число між і з вимогою, щоб утворював не спадаючу послідовність. Визначте відхилення такої послідовності як . Створіть алгоритм, який знаходить значення b_i з мінімальним відхиленням у процесі виконання O (n \ sqrt [4] {l}) …

3
Проблеми в P із виразно швидшими рандомізованими алгоритмами
Чи є в якісь проблеми, які мають рандомізовані алгоритми, що долають нижчі межі детермінованих алгоритмів? Більш конкретно, чи ми знаємо будь-який для якого ? Тут \ mathsf {PTIME} (f (n)) означає набір мов, які можна визначити рандомізованою TM з постійною обмеженою (одно- або двосторонньою) помилкою на f (n) кроках.ПP\mathsf{P}кkkP T …

1
Алгоритм переслідування рухомої цілі
Припустимо, у нас є чорна скринька fff яку ми можемо запитувати та скидати. Коли ми скинути fff , стан fSfSf_S з fff встановлюється на елемент обраної рівномірно випадковим чином з безлічі { 0 , 1 , . . . , n - 1 }{0,1,...,n−1}\{0, 1, ..., n - 1\} де …

2
Як описати алгоритми, довести та проаналізувати їх?
Перш ніж читати «Мистецтво комп’ютерного програмування» (TAOCP) , я глибоко не розглядав ці питання. Я б використовував псевдо-код для опису алгоритмів, розуміння їх та оцінки часу виконання лише щодо порядків зростання. TAOCP ретельно змінює свою думку. TAOCP використовує англійську мову, змішану з кроками та goto, для опису алгоритму, а також …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.