Множества

Здесь описаны операторы и функции для работы с массивом логических значений (тип set).

Операторы

Функции

arr(set s) arr.int

Функция arr конвертирует множество set в массив целых чисел, который содержит индексы элементов множества.

set(str s) set

Функция set конвертирует строку в множество set и возвращает его. Строка должна содержать только символы 1 и 0.

set(arr.int a) set

Функция set конвертирует массив целых чисел в множество set и возвращает его. Результирующее множество будет иметь элементы с соответствующими индексами.

run arr.int {
  set s &= {780, 99, 128, 105, 136}
  arr.int as = arr(s)
  as += 330
  s &= set(as)
  return arr(s) // [99 105 128 136 330 780]
}

str(set s) str

Функция str конвертирует множество в строку и возвращает её. Результирующая строка содержит только символы 1 и 0.

Set(set s, int index) set

Функция Set добавляет элемент к множеству. Эквивалентно s[index] = true. Функция возвращает s.

Toggle(set s, int index) bool

Функция Toggle добавляет элемент множеству, если его не существует, в противном случае, элемент удаляется. Эквивалентно s[index] = !s[index]. Функция возвращает предыдущее состояние - true, если элемент существовал и false в противном случае.

UnSet(set s, int index) set

Функция UnSet удаляет элемент из множества. Эквивалентно s[index] = false. Функция возвращает s.

Last updated