language-agnostic- все статьи тега ➜ страница 3
Как проверить, является ли число палиндромом?
Как проверить, является ли число палиндромом? любой язык. Любой алгоритм. (за исключением алгоритма превращения числа в строку, а затем реверсирования строки). ...
Алгоритм Графа Для Нахождения Всех Связей Между Двумя Произвольными Вершинами
Я пытаюсь определить наилучший алгоритм эффективного времени для выполнения задачи, описанной ниже. у меня есть набор записей. Для этого набора записей у меня есть данные соединения, которые указывают, как пары записей из этого набора соединяются друг с другом. Это в основном представляет собой неориентированный граф, причем записи являются вершинами, а данные соединения-ребрами. все записи в наборе есть информацию о соединении (т. е. нет бесхозных записей присутствует; каждая запись в наборе ...
Получение части URL-адреса (регулярное выражение)
учитывая URL (одна строка):http://test.example.com/dir/subdir/file.html Как я могу извлечь следующие части с помощью регулярного выражения: поддомене (тест) домен (example.com) путь без файла (/dir/subdir/) файл (file.html) путь к файлу (/dir/subdir / file.html) URL без пути (http://test.example.com) (добавьте любой другой, который вы считаете полезным) регулярное выражение должно работать правильно, даже если я ввожу следующий URL:http://example.example.com/example/example/example.html спа ...
Как эффективно построить дерево из плоской конструкции?
у меня есть куча объектов в плоскую структуру. Эти объекты имеют ID и ParentID свойство, так что они могут быть расположены в деревьях. Они не находятся в определенном порядке. Каждый ParentID свойство не обязательно совпадает с ID в структуре. Поэтому их может быть несколько деревьев, выходящих из этих объектов. как бы вы обработали эти объекты для создания результирующих деревьев ? Я не так далеко от решения, но я уверен это далеко не оптимально... мне нужно создать эти деревья, чтобы затем ...
Что такое "ортогональность"?
Что означает "ортогональность", когда речь заходит о языках программирования? Каковы некоторые примеры ортогональности? ...
Observer Design Pattern vs " слушатели"
Мне кажется, что шаблон дизайна наблюдателя, описанный в GOF, на самом деле то же самое, что и слушатели, найденные в различных наборах инструментов. Есть ли разница между понятиями, или слушатели и наблюдатели действительно одно и то же. (Я не ищу какой-либо конкретной реализации компьютерного языка, я просто хочу понять разницу (если таковая имеется) с точки зрения дизайна. Да, я знаю, что есть несколько ответов на подобные вопросы на SOF, но они коренятся в конкретные вопросы о конкретных я ...
Что такое хорошая хэш-функция?
что такое хорошая хэш-функция? Я видел много хэш-функций и приложений в моих курсах структур данных в колледже, но в основном я понял, что довольно сложно сделать хорошую хэш-функцию. Как правило, чтобы избежать столкновений мой профессор сказал, что: function Hash(key) return key mod PrimeNumber end (mod-это оператор % в C и подобных языках) С простым числом, чтобы быть размером хэш-таблицы. Я понимаю, что это довольно хорошая функция, чтобы избежать столкновений и быстрый, но как могу ли ...
Что делает хороший модульный тест? [закрытый]
Я уверен, что большинство из вас пишут много автоматических тестов, и что вы также столкнулись некоторые "подводные камни" при модульном тестировании. мой вопрос: соблюдаете ли вы какие-либо правила поведения при написании тестов, чтобы избежать проблем в будущем? Чтобы быть более конкретным: Что такое свойства хороших модульных тестов или как вы пишете тесты? языковые агностические предложения приветствуются. ...
Программист головоломка: кодирование состояния шахматной доски на протяжении всей игры
Не совсем вопрос, скорее головоломка... на протяжении многих лет я участвовал в нескольких технических интервью новых сотрудников. Помимо стандартных вопросов "знаете ли вы технологию X", я также попытался понять, как они подходят к проблемам. Как правило, я отправлял им вопрос по электронной почте за день до интервью и ожидал, что они придумают решение на следующий день. часто результаты были бы довольно интересными - неправильно, но интересно - и человек все равно получит мою рекомендацию, е ...
Алгоритм для размещения перекрывающихся прямоугольников?
эта проблема на самом деле имеет дело с перекатами, я просто обобщу ниже как таковой: У меня есть 2D вид, и у меня есть несколько прямоугольников в пределах области на экране. Как мне разложить эти коробки так, чтобы они не перекрывали друг друга, а только регулировали их с минимальным перемещением? позиции прямоугольников являются динамическими и зависят от ввода пользователя, поэтому их позиции могут быть в любом месте. Прикрепленные изображения показывают проблему и желаемый решение реа ...
Почему параметры const не разрешены в C#?
Это выглядит странно, особенно для разработчиков C++. В C++ мы использовали для обозначения параметра как const для того чтобы быть уверенным, что его состояние не будет изменено в методе. Есть и другие конкретные причины C++, такие как передача const ref для того, чтобы пройти мимо ref и быть уверенным, что состояние не будет изменено. Но почему мы не можем отметить как параметры метода const в C#? почему я не могу объявить свой метод следующим образом? .... static void TestMethod1(co ...
Что такое инвариант?
слово, кажется, используется в ряде контекстов. Лучшее, что я могу понять, это то, что они означают переменную, которая не может измениться. Разве это не то, что константы / финалы (проклятая Java!) за что? ...
Алгоритм создания школьного расписания
Мне было интересно, есть ли известные решения для алгоритма создания школьного расписания. В основном речь идет об оптимизации "часового разброса" (как в случае учителей, так и в случае классов) для данных ассоциаций класса-учителя-предметника. Мы можем предположить, что у нас есть наборы классов, предметов урока и учителей, связанных друг с другом на входе, и что расписание должно соответствовать между 8 утра и 4 вечера. Я думаю, что, вероятно, нет точного алгоритма для этого, но, возможно кт ...
Как я могу измерить сходство между двумя изображениями? [закрытый]
Я хотел бы сравнить скриншот одного приложения (может быть веб-страница) с ранее сделанным скриншотом, чтобы определить, правильно ли отображается приложение. Я не хочу точного сравнения соответствия, потому что аспект может быть немного другим (в случае веб-приложения, в зависимости от браузера, какой-то элемент может быть в немного другом месте). Это должно дать меру того, насколько похожи скриншоты. есть ли библиотека / инструмент что уже делает это? Как бы вы это реализовали? ...
Гольф код: игра "Жизнь" Джона Конвея
Задача: напишите самую короткую программу, которая реализует Джона Х. Конвея игры клеточный автомат. [ссылке] EDIT: примерно через неделю соревнований я выбрал победителя: pdehaan, за управление, чтобы победить решением по Матлаб один символ с perl. для тех, кто не слышал об игре жизни, вы берете сетку (в идеале бесконечную) квадрата ячейки. Клетки могут быть живыми (заполненными) или мертвыми (пустыми). Мы определяем, какие клетки живы на следующем этапе времени, применяя следующие правила: ...
Перечисления и константы. Что и когда использовать?
Я читал о перечислениях и нашел их очень похожими на объявление констант. Как бы я знал, когда использовать константу, а не перечисление или наоборот. Каковы некоторые из преимуществ использования перечислений? ...
Верхний и нижний регистр
при выполнении сравнения без учета регистра более эффективно преобразовать строку в верхний или нижний регистр? Это вообще имеет значение? Он предложил в должности что C# более эффективен с ToUpper, потому что " Microsoft оптимизировала его таким образом.- Но я тоже читал этот аргумент что преобразование ToLower против ToUpper зависит от того, что ваши строки содержат больше, и что обычно строки содержат больше символов нижнего регистра, которые делает ToLower более эффективным. в частности, ...
Анемичная Модель Домена: Плюсы / Минусы
Я хотел бы знать, какие плюсы и минусы для использования анемичная модель предметной области (см. ссылку ниже). Статьи Фаулера ...
Программно осветлить цвет
мотивация Я хотел бы найти способ взять произвольный цвет и осветлить его на несколько оттенков, чтобы я мог программно создать хороший градиент от одного цвета до более светлой версии. Градиент будет использоваться в качестве фона в пользовательском интерфейсе. возможность 1 очевидно, что я могу просто разделить значения RGB и увеличить их по отдельности на определенную сумму. Это на самом деле то, что я хочешь? вариант 2 моя вторая мысль состояла в том, чтобы преобразовать RGB в HSV/HSB/H ...
Что такое цикломатическая сложность?
термин, который я вижу время от времени, - это "цикломатическая сложность". Здесь я увидел некоторые вопросы о том, как вычислить CC языка X или" как мне сделать Y с минимальным количеством CC", но я не уверен, что действительно понимаю, что это такое. на Сайт Вопросом, Что Происходит, Я видел объяснение, которое в основном говорит "количество решений в методе. Каждое если, для, & & etc. добавляет +1 к CC "оценка"). Это действительно так? Если да, то почему это плохо? Я вижу, что можно ...