Как заменить все одинаковые подстроки в строке на JavaScript

Как заменить все одинаковые подстроки в конкретной строке? Рассмотрим эту задачу с двумя возможными решениями. Чтение займёт не больше двух минут.

1
6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Как заменить все одинаковые подстроки в строке на JavaScript

Какую структуру данных выбрать для реализации словаря

Бывает сложно подобрать оптимальную структуру данных под свою задачу. В этой статье мы расскажем вам о наиболее подходящей структуре данных для реализации словаря.

8
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Какую структуру данных выбрать для реализации словаря

Радужная визуализация алгоритмов сортировки

Если у вас есть ограничения по восприятию цвета, то доступна версия для дальтоников. Во всех визуализациях каждый ряд или столбец пикселей представляет собой отдельный независимый массив, который сортируется одновременно с…

7
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
алгоритмы сортировки

Лекция «Алгоритмы»

В лекции Рахим Давлеткалиев объясняет, что такое ‎алгоритмы. На доступных примерах он раскрывает базовые понятия и разбирает задачи.

17
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Лекция «Алгоритмы»

Оценка сложности алгоритмов, или Что такое О(log n)

Если вы всё ещё не понимаете, что такое вычислительная сложность алгоритмов, и ждете простое и понятное объяснение, — эта статья для вас.

2
56
reaction
0
reaction
0
reaction
0
reaction
0
reaction
7
7
emoji
Обложка: Оценка сложности алгоритмов, или Что такое О(log n)
Обложка: Курс «Алгоритмы и структуры данных»

Курс «Алгоритмы и структуры данных»

Русскоязычный курс проекта «Техносфера Mail.Ru Group», представляющий собой введение в основы алгоритмов и структур данных. Цель курса — познакомить слушателей с основными алгоритмами, применяемыми для разработки программного обеспечения, научить выбирать подходящие структуры…

22
reaction
0
reaction
0
reaction
0
reaction
0
reaction
6
6
emoji

Визуализации алгоритмов сортировки

Алгоритмы сортировки упорядочивают элементы по определённому критерию. В день появления первых компьютерных вычислений появился и повод для споров между исследователями. Причиной разногласий послужил поиск эффективных способов решения не только для…

2
17
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
Обложка: Визуализации алгоритмов сортировки

Подборка визуализаций по алгоритмам поиска

Визуализация — отличный способ показать, как наглядно работает тот или иной алгоритм. Предлагаем вашему вниманию алгоритмы поиска и их визуализации с ссылками на исходный код. Список рассматриваемых алгоритмов: алгоритм поиска…

9
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Подборка визуализаций по алгоритмам поиска

Тест: насколько хорошо вы разбираетесь в ИИ?

Тема искусственного интеллекта стала особенно популярной в последние годы. Умные машины научились блефовать, обыгрывать профессиональных игроков в настольные игры, делать переводы и распознавать человеческий голос. Каждую неделю мы узнаем о всё…

6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
Обложка: Тест: насколько хорошо вы разбираетесь в ИИ?

На пути к Deep Blue: пошаговое руководство по созданию простого ИИ для игры в шахматы

Эта статья посвящена написанию простого ИИ, умеющего играть в шахматы, на JavaScript. Отличный способ изучить несколько полезных алгоритмов.

7
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
Обложка: На пути к Deep Blue: пошаговое руководство по созданию простого ИИ для игры в шахматы
Алгоритмы и структуры данных

Курс «Алгоритмы и структуры данных»

Максим Бабенко рассказывает об алгоритмах и структурах данных, а также раскрывает базовые понятия. Курс подойдет новичкам и специалистам.

15
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Создаем реалистичный ландшафт за 130 строк кода на JavaSctipt

Создаем реалистичный ландшафт за 130 строк кода на JavaScript

Мы перевели статью о том, как создать на JavaScript реалистичный ландшафт всего за 130 строк кода. Изображение ландшафта генерируется в 3D!

6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Как написать бота, которого будет нельзя обыграть в «крестики-нолики», или Знакомство с правилом «минимакс»

Как написать бота, которого будет нельзя обыграть в «крестики-нолики», или Знакомство с правилом «минимакс»

Мы напишем ИИ, который будет невозможно обыграть в «крестики-нолики». Предугадав ваш вопрос «почему?», ответим: благодаря алгоритму «минимакс».

9
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

8 сервисов для визуализации алгоритмов

Порой изучение алгоритмов дается нелегко, особенно для новичков. Поэтому мы собрали подборку сервисов, призванных помочь вам разобраться в том, как работают алгоритмы. Иллюстрирование популярных алгоритмов поиска Algorithm Visualizer Algorithm Wiki…

9
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: 8 сервисов для визуализации алгоритмов

Подборка бесплатных курсов с Coursera, которые прокачают ваш скилл в программировании

В последнее время все чаще и чаще выходят различные курсы по программированию. И очень часто получается так, что курс, на который вы записались, оказывается очень сомнительного качества. Поэтому мы решили…

14
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji
Обложка: Подборка бесплатных курсов с Coursera, которые прокачают ваш скилл в программировании
Обложка: 14 алгоритмических задач с разбором решений — итоги «Технокубка» 2017

14 алгоритмических задач с разбором решений — итоги «Технокубка» 2017

Технокубок — это олимпиада по программированию, организованная Mail.Ru Group, МГТУ им. Н. Э. Баумана и МФТИ для учеников 8-11 классов, а также потенциальная возможность попасть в лучшие технические вузы благодаря…

5
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

Находим N’е число Фибоначчи тремя способами за приемлемое время: основы динамического программирования

Задача: посчитать N-е число последовательности, в которой каждый элемент равен сумме двух предыдущих. Такая последовательность называется последовательностью Фибоначчи: 1, 1, 2, 3, 5, 8… Очень часто на разнообразных олимпиадах попадаются…

12
reaction
0
reaction
0
reaction
0
reaction
0
reaction
5
5
emoji
Обложка: Находим N’е число Фибоначчи тремя способами за приемлемое время: основы динамического программирования
Обложка: «Гарантия корректности» как методика обхода багов

«Гарантия корректности» как методика обхода багов

Вам когда-нибудь приходилось гарантировать корректность выполнения своей программы? На самом деле это большой объем работы, который не всегда возможно выполнить. В самих доказательствах могут быть ошибки, об этом говорится и…

3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

Алгоритмы генерации лабиринтов

Лабиринты — это не только самостоятельный класс игр, но и основа для создания локаций в играх других жанров: например, систем пещер, которые, в свою очередь, могут быть использованы в очень широком…

9
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
Обложка: Алгоритмы генерации лабиринтов
Обложка: Как одной математической формулой по номеру месяца посчитать количество дней в нем?

Как одной математической формулой по номеру месяца посчитать количество дней в нем?

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

6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji
Обложка: Не для манки-кодеров: книги по алгоритмам и структурам данных

Не для манки-кодеров: книги по алгоритмам и структурам данных

Чтобы быть хорошим программистом, мало знать синтаксис какого-нибудь языка и хорошо писать код. Когда речь идет о маленьких шаблонных проектах, этого хватит. Но вот вы сталкиваетесь с чем-то по-настоящему серьезным и масштабным, и становится ясно — без знания…

14
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

Алгоритмы поиска пути в графе

Для новичков Граф — это (упрощенно) множество точек, называемых вершинами, соединенных какими-то линиями, называемыми рёбрами (необязательно все вершины соединены). Можно представлять себе как города, соединенные дорогами. Любое клетчатое поле можно…

10
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Алгоритмы поиска пути в графе

Посчитайте количество вложенных друг в друга отрезков

На прямой даны N отрезков (в реальной жизни это могут быть промежутки времени, например), которые заданы координатами их левого и правого конца. Для каждого данного отрезка необходимо узнать, сколько из…

6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Посчитайте количество вложенных друг в друга отрезков

Реализуйте свою функцию нахождения квадратного корня

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

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Реализуйте свою функцию нахождения квадратного корня

Найдите максимальную по длине палиндромную подстроку

Классическая задача. Найдите в данной вам строке максимальную по длине подстроку, которая является палиндромом (то есть читается слева направо и справа налево одинаково). Предложите как можно более эффективный алгоритм. Решение…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Материалы по продвинутым алгоритмам и структурам данных

Материалы по продвинутым алгоритмам и структурам данных

Знание алгоритмов и структур данных — вот один из ключевых навыков программиста. Промышленные разработчики могут ограничиться и базой: стеки, очереди, хеш-таблицы, алгоритмы сортировки, поиск в глубину и т.д. Но в…

6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
4
4
emoji
Обложка: Задача про кассира-программиста

Задача про кассира-программиста

Задача, которую давали на собеседованиях в Apple. Представьте, что вы получили работу кассира в магазине. Ваш босс случайно выяснил, что вы обладаете навыками программиста, и захотел, чтобы вы помогли ему написать…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Задача про слияние промежутков в календаре

Задача про слияние промежутков в календаре

Предположим, компания, в которой вы работаете, разрабатывает электронный календарь. В календаре есть функция, показывающая, когда различные команды программистов будут заняты на какой-либо встрече. Те периоды, когда команда занята, на календаре отмечены как…

4
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Бесплатные материалы для программистов

Огромная база ссылок на книги, статьи, туториалы, онлайн-курсы, интерактивные обучалки, подкасты — всё только бесплатное.

2
112
reaction
0
reaction
0
reaction
0
reaction
0
reaction
15
15
emoji
Обложка: Бесплатные материалы для программистов

Новый инструмент «Herbie» автоматически переписывает арифметические выражения, чтобы минимизировать потери от округлений чисел с плавающей точкой

Код, который работает с числами с плавающей точкой, может выглядеть вполне правильным, но тем не менее производить некорректные вычисления из-за ошибок округления. Вашингтонский университет предлагает решение — Herbie — инструмент…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Задача о максимальном произведении трех чисел массива

Задача, которую предлагали на собеседованиях в Apple: у вас есть массив с целыми числами, в том числе и отрицательными, вам нужно найти самое большое произведение 3 чисел из этого массива.…

5
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Задача о максимальном произведении трех чисел массива

Красивые и наглядные анимации и диаграммы

Лучший способ объяснить что-то — нарисовать диаграмму, картинку или, лучше всего, создать интерактивную. Кроме того, красивые и подробные диаграммы или занимательные анимации просто интересно рассматривать. Мы подобрали для вас самые интересные…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji