Перейти к основному содержимому

117 записей с тегом "Алгоритмы"

Посмотреть все теги

· 5 мин. чтения

1. Обзор

Структура данных HyperLogLog (HLL) — это вероятностная структура данных, используемая для оценки кардинальности набора данных .

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

Когда мы имеем дело с очень большими объемами данных, подсчет кардинальности таким образом будет очень неэффективным, поскольку набор данных будет занимать много памяти.

Но если нас устраивает оценка в пределах нескольких процентов и нам не нужно точное количество уникальных посещений, то мы можем использовать HLL , так как он был разработан именно для такого варианта использования — оценки количества миллионов или даже миллиардов. различных значений .

2. Зависимость от Maven

· 3 мин. чтения

1. Введение

В этой статье мы увидим, как мы можем проверить, является ли данная строка палиндромом, используя Java.

Палиндром — это слово, фраза, число или другие последовательности символов, которые читаются так же, как в прямом , так и в обратном порядке, например, «мадам» или «гоночная машина».

2. Решения

В следующих разделах мы рассмотрим различные способы проверки того, является ли данная строка палиндромом или нет.

· 1 мин. чтения

1. Обзор

В этом кратком руководстве мы покажем, как округлить заданное число до ближайшей сотни .

Например:

99 становится 100

200,2 становится 300

400 становится 400

2. Реализация

Во- первых, мы собираемся вызвать Math.ceil() для входного параметра. Math.ceil() возвращает наименьшее целое число, которое больше или равно аргументу. Например, если введено значение 200,2, Math.ceil() вернет 201.

· 4 мин. чтения

1. Введение

В этом руководстве мы собираемся узнать о шаблоне проектирования Service Locator в Java .

Мы опишем концепцию, реализуем пример и выделим плюсы и минусы его использования.

2. Понимание шаблона

Целью шаблона Service Locator является возврат экземпляров службы по запросу. Это полезно для отделения потребителей услуг от конкретных классов.

· 4 мин. чтения

1. Обзор

В этом уроке мы рассмотрим различные способы подсчета слов в заданной строке с использованием Java.

2. Использование StringTokenizer

Простой способ подсчета слов в строке в Java — использовать класс StringTokenizer :

assertEquals(3, new StringTokenizer("three blind mice").countTokens());
assertEquals(4, new StringTokenizer("see\thow\tthey\trun").countTokens());

· 5 мин. чтения

1. Введение

В этом кратком руководстве мы узнаем, как обнаружить несколько слов внутри строки .

2. Наш пример

Предположим, у нас есть строка:

String inputString = "hello there, ForEach";

· 4 мин. чтения

1. Обзор

В этом уроке мы рассмотрим ряд Фибоначчи.

В частности, мы реализуем три способа вычисления n -го члена ряда Фибоначчи, последний из которых является решением с постоянным временем.

2. Ряд Фибоначчи

Ряд Фибоначчи представляет собой ряд чисел, в котором каждый член является суммой двух предыдущих членов . Первые два члена 0 и 1 .

· 13 мин. чтения

1. Введение

В этом руководстве мы изучим процесс создания набора мощности заданного набора в Java.

Напомню, что для каждого набора размера n существует набор мощности размера 2 n . Мы узнаем, как получить его, используя различные методы.

2. Определение набора мощности

Набор мощности данного набора S — это набор всех подмножеств S , включая само S и пустое множество.

· 11 мин. чтения

1. Обзор

В этом руководстве мы поймем, как использовать Apache Spark MLlib для разработки продуктов машинного обучения. Мы разработаем простой продукт машинного обучения с помощью Spark MLlib, чтобы продемонстрировать основные концепции.

2. Краткое введение в машинное обучение

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

Мы увидим, что именно влечет за собой это определение, когда возьмем наш пример.

· 6 мин. чтения

1. Введение в OptaPlanner

В этом руководстве мы рассмотрим решатель удовлетворения ограничений Java под названием OptaPlanner .

OptaPlanner решает проблемы планирования, используя набор алгоритмов с минимальной настройкой.

Хотя понимание алгоритмов может дать полезную информацию, инфраструктура выполняет за нас тяжелую работу.

2. Зависимость от Maven