Ввод: Массивы A [м], B [n]
Вывод: True, если они не пересекаются, False в противном случае
1. Грубая сила: O (м * n) время, O (1) пробел
1. Search for each element of A into B
2. As soon as you get a match break and return false
3. If you reach till end, return true
Преимущество: Не изменяет ввод
2. Сортировать оба O (mlogm + nlogn + m + n)
1. Sort both arrays
2. Scan linearly
Недостаток: Изменяет ввод
3. Сортировать меньше O ((m + n) logm)
1. Say, m < n, sort A
2. Binary search for each element of B into A
Недостаток: Изменяет ввод
4. Сортировать больше O ((m + n) logn)
1. Say n > m, sort B
2. Binary search for each element of A into B
Недостаток: Изменяет ввод
5. Хеширование O (м + n) времени, O (м) или O (n) пробела
Преимущество: Не изменяет ввод