Это продолжение Вопросы для интервью по Java SE, часть 2

Вопросы :

  1. Напишите программу, которая печатает бесконечный ряд натуральных чисел. начиная с 1 т.е. 1 2 3 4 5 6 …..

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

2. Реализовать linkedHashMap и описать, чем он отличается от hashMap и как достигается это особое свойство?

3. Реализовать ConcurrentHashMap и описать, чем он отличается от hashMap и как достигается это особое свойство?

4. Что такое отказоустойчивый и отказоустойчивый итератор и как они работают для получения своего конкретного свойства.

5. Напишите неизменяемый класс, и он должен быть полностью неизменяемым.

6. Напишите класс Singleton — что, если инициализация переменной в этом классе, за управление которым отвечает класс singleton, выполняется внутри статического блока, будет ли этот случай по-прежнему соответствовать так называемому свойству singleton.

7. Что произойдет, если мы не переопределим методы hashCode и equals для наших собственных пользовательских классов и не будем использовать hashMap для хранения этого пользовательского класса, как будет вести себя карта в случае добавления и извлечения данных с использованием ключа.

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

Таблица: EmpID | ID менеджера | Департамент

9. В чем разница между методом ожидания и сна в java.

10. Вы должны написать алгоритм/логику/псевдокод/код для вычисления оставшегося в живых в условиях, указанных ниже:

100 человек стоят в кругу рядом друг с другом, вы дали меч 1-му человеку (1-й человек может быть любым, кого вы хотите выбрать из 100), и он должен убить человека рядом с ним, а затем человека рядом убитому возьмет меч и убьет другого рядом с ним (движение меча будет всегда в одном направлении [по часовой стрелке или против часовой стрелки], т.е. зависит от того, как стартует 1-й человек). Так что этот процесс будет продолжаться, и только один выживет в конце игры. Вы должны вычислить этого одинокого выжившего.

Пример: 1 2 3 4 5 6 7 8 9 10 , 10 человек стоят в кругу.

После 1-го раунда движения меча по часовой стрелке относительно 1-го, осталось людей: 1 3 5 7 9

После 2-го раунда движения мечом по часовой стрелке относительно 1-го, осталось человек: 1 5 9

После 3-го раунда движения мечом по часовой стрелке относительно 1-го осталось 5 человек.

Таким образом, 5-е лицо является ответом.

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

11. Есть новая компания по обслуживанию оборудования, и они хотят создать свой сервисный центр для штата в стране. Они заботятся об опыте своих клиентов, поэтому решили настроить центр таким образом, чтобы клиент имел центр в своем городе или в любом соседнем городе. Учитывая количество городов в штате и связь между городами, вы должны определить минимальное количество центров, которые необходимо настроить. Напишите для этого алгоритм.

Города будут пронумерованы, начиная с 1 и так далее.

Вход :

1-я строка: номер города (пример x) [пробел] количество связей между городами (пример y)

2-я строка до y строк: номер города (пример a) [пробел] номер города (пример b) {т.е. город a соединен с городом b}

Ex :

6 8 → 6 городов и всего 8 связей между всеми городами, в данном случае количество городов от 1 до 6.

1 4

2 6

3 2

2 5

1 2

5 3

1 6

3 5

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

Еще похожие статьи:

Далее : Вопросы для собеседования по Java SE — Часть 4

Вопросы для собеседования по Java SE. Часть 1

Вопросы для собеседования по Java SE. Часть 2

Вопросы для собеседования по Java SE. Часть 5