
- Главная
- Каталог
- Образование
- Art of Code
Статистика канала
-30% на любой курс карьерной линейки -40%, если берёте вдвоём — и да, друг/подруга тоже считаютсяПодари возможность приблизиться к офферу: меньше тревоги перед собесами, структурная подготовка и много практики.
public static void main(String[] args) {
Map<Integer, String> internMap = new HashMap<>(5);
internMap.put(1, "salary");
internMap.put(2, "?");
internMap.put(3, "thanks,");
internMap.put(4, "I");
internMap.put(5, "work");
internMap.put(6, "for");
internMap.put(7, "compote");
System.out.println("key 1 = " + internMap.get(1));
System.out.println("size = " + internMap.size());
}{}
При добавлении какого элемента произойдёт resize()?
Результат:
Ресайз произойдёт при добавлении 7-ого элемента, все элементы перераспределятся, ёмкость хэшмапы увеличится с 8 до 16.
Объяснение:
При создании хэшмапы с параметром 5 ёмкость на самом деле = 8, так как приводится к ближайшей степени двойки.
Предельное количество элементов высчитывается именно от реальной ёмкости и в джаве по умолчанию равняется 75% от заполненности => 8 * 0,75 = 6. Ресайз произойдёт на 7 элементе, когда предельное количество станет превышено.
Для 7 элементов это не критично, но в условиях больших данных ресайзы необходимо избегать, так как они замедляют хэшмапу во время перераспределения бакетов.
Стандартный способ расчёта ёмкости, если мы в курсе предполагаемого количества элементов:
int expectedElements = 1000;
int safeCapacity = (int) Math.ceil(expectedElements / 0.75) + 1;
Map<K, V> anotherStupidMap = new HashMap<>(safeCapacity);{}
@codeof_art🔽 Разбор актуальных контестов Яндекса🔽 Огромный банк реальных технических вопросов🔽 Записи реальных собесов и интервью🔽 Реальные тестовые задания топовых бигтехов🔽 Разбор всех задач с алгсобесов Яндекса
public static void main(String[] args) {
Integer stupidNum1 = 127;
Integer stupidNum2 = 127;
Integer stupidNum3 = Integer.parseInt("127");
Integer stupidNum4 = 128;
Integer stupidNum5 = 128;
Integer stupidNum6 = -129;
Integer stupidNum7 = -129;
System.out.println(stupidNum1 == stupidNum2);
System.out.println(stupidNum1 == stupidNum3);
System.out.println(stupidNum4 == stupidNum5);
System.out.println(stupidNum6 == stupidNum7);
}{}
Что будет выведено на экран при сравнении этих чисел?
Результат:
true
true
false
false
Объяснение:
В джаве значения в диапазоне от -128 до 127 включительно хранятся в Integer кэше.
Если инициализируется переменная со значением в указанном диапазоне, объект из кэша будет использован повторно => одна и та же ссылка на один и тот же объект.
Если значение не входит в диапазон, создаётся новый объект в куче, и при проверке на равенство через "==" сравниваться будут ссылки на разные объекты.
При создании значения через parseInt(): возвращается примитив int -> автоупаковка в Integer -> генерация вызова valueOf(), который проверяет, находится ли значение в диапазоне кэша, и либо возвращает кэшированный объект, либо создаёт новый объект типа Integer.
В общем, помните об этом, но сравнивайте числа через equals(), чтобы не заморачиваться.
@codeof_artТолько у нас ты получишь:После курса тебя ждет: • Пробный техсобес • Персональная консультация и сопровождение • Рефералка в Яндекс, или другую топ-компанию🔽 Разбор актуальных контестов Яндекса и Тинькофф🔽 Огромный банк реальных технических вопросов🔽 Реальные тестовые задания топовых бигтехов🔽 Сочные pet-проекты в портфолио🔽 Разбор всех задач с алгсобесов Яндекса
#include <iostream>
using namespace std;
int f(int a, int b) {
if (a == 0 || b == 0) {
return a + b;
}
if (a > b) {
return f(a - b, b);
}
return f(a, b - a);
}
int main() {
cout << f(17, 257) << endl;
return 0;
}{}
что напечатается на экране?
Решение: ||оптимальнее перебора по всем случаям ничего не нашлось..., поэтому просто ответ: 1 по алгоритму евклида||Отзывы канала
- Добавлен: Сначала новые
- Добавлен: Сначала старые
- Оценка: По убыванию
- Оценка: По возрастанию
Каталог Телеграм-каналов для нативных размещений
Art of Code — это Telegam канал в категории «Образование», который предлагает эффективные форматы для размещения рекламных постов в Телеграмме. Количество подписчиков канала в 2.1K и качественный контент помогают брендам привлекать внимание аудитории и увеличивать охват. Рейтинг канала составляет 6.6, количество отзывов – 1, со средней оценкой 3.0.
Вы можете запустить рекламную кампанию через сервис Telega.in, выбрав удобный формат размещения. Платформа обеспечивает прозрачные условия сотрудничества и предоставляет детальную аналитику. Стоимость размещения составляет 3496.5 ₽, а за 2 выполненных заявок канал зарекомендовал себя как надежный партнер для рекламы в TG. Размещайте интеграции уже сегодня и привлекайте новых клиентов вместе с Telega.in!
Вы снова сможете добавить каналы в корзину из каталога
Комментарий