Битовые операции
Материал из Algocode wiki
Версия от 09:30, 13 декабря 2019; Глеб (обсуждение | вклад)
Содержание
Проверка, что $i$-й элемент в множестве $num$
$(num >> i) \& 1$ вернет 1 тогда и только тогда, когда $i$-й элемент в множестве $num$, так как $(num >> i)$ вернет нам число $num$ со сдвигом на $i$ и следовательно 1 символ будет равен 1, если элемент в множестве.
Добавить $i$-й элемент в множество $num$
$num |= (1 << i)$
Удалить $i$-й элемент из множества $num$, если он есть
$num \^= (1 << i)$
Удалить $i$-й элемент из множества $num$
$num \&= ~(1 << i)$
Автор конспекта: Лобанов Глеб
По всем вопросам пишите в telegram @glebodin