Подтвердить что ты не робот

Разница между подмассивом, подмножеством и подпоследовательностью

Я немного смущен между подмассивом, подпоследовательностью и подмножеством

если у меня есть {1,2,3,4}

то

Подпоследовательность

может быть {1,2,4} OR {2,4} и т.д. Поэтому в принципе я могу опустить некоторые элементы, но сохранить порядок.

subarray будет (скажем, подмассивом размером 3)

{1,2,3}
{2,3,4} 

Тогда какое будет подмножество?

Я немного запутался между этими 3.

4b9b3361

Ответ 1

На мой взгляд, если данный шаблон является массивом, то так называемый subarray означает contiguous subsequence.

Например, если задано {1, 2, 3, 4}, subarray может быть

{1, 2, 3}
{2, 3, 4}
etc.

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

Например, также {1, 2, 3, 4}, subsequence может быть

{1, 3}
{1,4}
etc.

Хотя данный шаблон является набором, subset содержит любые возможные комбинации исходного набора.

Например, {1, 2, 3, 4}, subset может быть

{1}
{2}
{3}
{4}
{1, 2}
{1, 3}
{1, 4}
{2, 3}
etc.

Ответ 2

В контексте массива SubSequence - не обязательно быть смелым, но нужно поддерживать порядок. Но SubArray является условным и по сути сохраняет порядок.

если у вас есть {1,2,3,4} --- {1,3,4} - действительная SubSequence, но это не подмассива.

И подмножество не является порядком и не имеет никакого смысла. Таким образом, вы {1,3,2} являются действительным подмножеством, но не подпоследовательностью или подмассивом.

{1,2} - действительный подмассив, подмножество и подпоследовательность.

Все Subarrays являются подпоследовательностями, и все подпоследовательности являются подмножествами.

Но иногда подмножества и подмассивы и подпоследовательности используются взаимозаменяемо, а слово contigious имеет префикс, чтобы сделать его более понятным.

Ответ 3

Рассмотрим массив:

 {1,2,3,4}

Subarray: непрерывная последовательность в массиве, т.е.

{1,2},{1,2,3}

Подпоследовательность: не нужно быть смежным, но поддерживает порядок, т.е.

{1,2,4}

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

 {1,3},{}

Учитывая массив/последовательность размера n, возможно

Subarray = n*(n+1)/2
Subseqeunce = (2^n) -1 (non-empty subsequences)
Subset = 2^n

Ответ 4

Рассмотрим эти два свойства в коллекции (массив, последовательность, набор и т.д.) Элементов: Порядок и Непрерывность.

Порядок - это когда вы не можете переключать индексы или местоположения двух или более элементов (коллекция с одним элементом имеет несоответствующий порядок).

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

Подмассив имеет Порядок и Непрерывность.

Подпоследовательность имеет порядок, но не непрерывность.

Подмножество не является ни Порядком, ни Непрерывностью.

Коллекция с Непрерывностью, но без Порядка не существует (насколько мне известно)

Ответ 5

В моем понимании, например, у нас есть список, скажем, [3,5,7,8,9]. Вот

подмножество не нуждается в поддержании порядка и имеет несмежное поведение. Например, [9,3] является подмножеством

подпоследовательность поддерживает порядок и имеет несмежное поведение. Например, [5,8,9] является подпоследовательностью

subarray поддерживает порядок и имеет смежное поведение. Например, [8,9] является подмассивом

Ответ 6

permutation: переставить члены множества

например, {1, 2} перестановка: {1, 2}, {2, 1}

combination: выбор некоторых членов набора независимо от порядка, так же как и subset

например, {1, 2} комбинация: {}, {1}, {2}, {1,2}

по факту,

  • большинство комбинаций (подмножеств) имеют заданную длину, например, комбинация 1-длины {1, 2} равна {1} и {2}

  • упомянутый выше set может быть обобщен на коллекцию с дублирующимися элементами

Ответ 7

подпоследовательности и подмассивы являются частью подмножеств.