Вопросы с тегом «algorithm»

105
Как преобразовать числа с плавающей запятой в удобочитаемые дроби?

Допустим, у нас есть 0.33, нам нужно вывести 1/3. Если есть 0.4, нам нужно вывести 2/5. Идея состоит в том, чтобы сделать его удобочитаемым, чтобы пользователь понимал « x частей из y » как лучший способ понимания данных. Я знаю, что проценты - хорошая замена, но мне было интересно, есть ли...

105
Округление объектов DateTime

Я хочу округлить дату / время до ближайшего интервала для графического приложения. Мне нужна подпись метода расширения, подобная приведенной ниже, чтобы округление могло быть достигнуто для любого уровня точности: static DateTime Round(this DateTime date, TimeSpan span); Идея состоит в том, что...

105
Большое число массивов JavaScript

Массивы в JavaScript очень легко изменять, добавляя и удаляя элементы. Это несколько маскирует тот факт, что большинство языковых массивов имеют фиксированный размер и требуют сложных операций для изменения размера. Кажется, что JavaScript упрощает написание плохо работающего кода массива. Это...

104
Реализация алгоритма быстрой стабильной сортировки в javascript

Я хочу отсортировать массив из примерно 200-300 объектов, сортируя по определенному ключу и заданному порядку (asc / desc). Порядок результатов должен быть последовательным и стабильным. Какой алгоритм лучше всего использовать, и не могли бы вы привести пример его реализации в javascript? Спасибо!...

103
В чем разница между парсерами LR, SLR и LALR?

В чем разница между парсерами LR, SLR и LALR? Я знаю, что SLR и LALR являются типами парсеров LR, но какова реальная разница в их таблицах синтаксического анализа? И как показать, является ли грамматика LR, SLR или LALR? Для грамматики LL мы просто должны показать, что любая ячейка таблицы...

102
Как работают тригонометрические функции?

Итак, в математике в старших классах и, возможно, в колледже нас учат, как использовать триггерные функции, что они делают и какие задачи решают. Но мне они всегда представлялись как черный ящик. Если вам нужен синус или косинус чего-либо, вы нажимаете кнопку sin или cos на своем калькуляторе, и...

102
Напишите функцию, которая возвращает самый длинный палиндром в заданной строке

например, "ccddcc" в строке "abaccddccefe" Я подумал о решении, но оно работает за время O (n ^ 2) Алго 1: Шаги: это метод грубой силы Имейте 2 цикла for для i = от 1 до i меньше array.length -1 для j = i + 1 to j меньше, чем array.length Таким образом можно получить подстроку всех возможных...

102
Проверьте, объединяются ли два связанных списка. Если да, то где?

Этот вопрос может быть старым, но я не мог придумать ответа. Скажем, есть два списка разной длины, сливающиеся в одной точке ; как мы узнаем, где находится точка слияния? Условия: Мы не знаем длины Мы должны анализировать каждый список только один раз....

101
Что такое псевдополиномиальное время? Чем оно отличается от полиномиального времени?

Что такое псевдополиномиальное время ? Чем оно отличается от полиномиального времени? Некоторые алгоритмы, работающие за псевдополиномиальное время, имеют время выполнения, например O (nW) (для задачи о ранце 0/1 ) или O (√n) (для пробного деления ); почему это не считается полиномиальным...

101
Number.sign () в javascript

Интересно, есть ли какие-нибудь нетривиальные способы найти знак числа ( сигнум-функция )? Может быть короче / быстрее / элегантнее, чем очевидное var sign = number > 0 ? 1 : number < 0 ? -1 : 0; Короткий ответ! Используйте это, и вы будете в безопасности и быстро (источник: moz ) if...

100
Как быстрее всего вычислить sin и cos вместе?

Я хотел бы вычислить как синус, так и косинус значения вместе (например, для создания матрицы вращения). Конечно, я мог бы вычислить их отдельно, одно за другим a = cos(x); b = sin(x);, но мне интересно, есть ли более быстрый способ, когда нужны оба значения. Изменить: чтобы обобщить ответы на...

100
Временная сложность алгоритма Евклида

Мне трудно решить, какова временная сложность алгоритма наибольшего общего знаменателя Евклида. Этот алгоритм в псевдокоде: function gcd(a, b) while b ≠ 0 t := b b := a mod b a := t return a Кажется, это зависит от a и b . Я думаю, что временная сложность равна O (a% b). Это правильно? Есть ли...

99
Найдите XOR всех чисел в заданном диапазоне

Вам дан большой диапазон [a, b], где «a» и «b» обычно могут быть от 1 до 4 000 000 000 включительно. Вы должны узнать XOR всех чисел в заданном диапазоне. Эта проблема использовалась в TopCoder SRM. Я видел одно из решений, представленных в матче, и не могу понять, как оно работает. Может ли...