Веб-версияОткрыть в Telegram

ПостЗадача: 1238. Circular Permutation in Binary Representation

1 сентября 2026
J
Java | LeetCode
Задача: 1238. Circular Permutation in Binary Representation Сложность: medium Даны 2 целых числа n и start. Ваша задача - вернуть любую перестановку p из (0,1,2.....,2^n -1) такую, что : p[0] = start p[i] и p[i+1] отличаются только одним битом в их двоичном представлении. p[0] и p[2^n -1] также должны отличаться только одним битом в их двоичном представлении. Пример: Input: n = 2, start = 3 Output: [3,2,0,1] 👨‍💻 Алгоритм: 1⃣Генерация Грей-кода: Генерация Грей-кода для чисел от 0 до 2𝑛−1 2⃣Определение начальной позиции: Находим индекс числа start в последовательности Грей-кода. 3⃣Построение перестановки: Формируем перестановку, начиная с числа start и следуя по циклическому Грей-коду. 😎 Решение: import java.util.*; public class Solution { public List<Integer> circularPermutation(int n, int start) { List<Integer> gray = grayCode(n); int startIndex = gray.indexOf(start); List<Integer> result = new ArrayList<>(); result.addAll(gray.subList(startIndex, gray.size())); result.addAll(gray.subList(0, startIndex)); return result; } private List<Integer> grayCode(int n) { List<Integer> result = new ArrayList<>(); int numElements = 1 << n; for (int i = 0; i < numElements; i++) { result.add(i ^ (i >> 1)); } return result; } } Ставь 👍 и забирай 📚 Базу знаний
1 · 523 ·

Рядом в ленте

JJava | LeetCodeЗадача: 477. Total Hamming Distance Сложность: medium Хэммингово расстояние между двумя целыми числами — это количество позиций, в которых соответствующие биты JJava | LeetCodeЗадача: 461. Hamming Distance Сложность: easy Расстояние Хэмминга между двумя целыми числами — это количество позиций, в которых соответствующие биты различны.
это сообщение
JJava | LeetCodeЗадача: 1006. Clumsy Factorial Сложность: medium Факториал целого положительного числа n - это произведение всех целых положительных чисел, меньших или равных nJJava | LeetCodeЗадача: 1020. Number of Enclaves Сложность: medium Вам дана двоичная матричная сетка m x n, где 0 обозначает морскую ячейку, а 1 - сухопутную. Ход состоит из пе
JJava | LeetCodeJava | LeetCode@easy_java_task · канал · Технологии
6 449подписчиков410средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем