#N Алгоритмы (урок в разработке)

Задачи

  1. Есть массив целых чисел (10 элементов), например:
    [1, 3, 2, 1, 3, 2, 2, 4, 0, -5]

    Задача: вывести на экран все числа, которые встречаются нечетное число раз.
    Т.е. в данном случае это:

    2, 4, 0, -5 

    Решите:

    1. любым способом
    2. за 1 прочтение массива (сложность меньше или равную N по количеству операций чтения исходного массива), т.е. по итогам одного чтения массива ответ должен быть готов.

    Примечание: давалась как простая разминочная задачка для собеседования в Яндекс.

  2. Есть массив (пусть не более 10 элементов):
    [0, 3, 2, 1, 0, 3, 2, 4, 0, -5]

    Задача: перенести все нули в конец, так чтобы в итоге получилось:

    [3, 2, 1, 3, 2, 4, -5, 0, 0, 0]

    Решите:

    1. Любым способом
    2. Решите со сложностью не более чем 2N (не заводя дополнительных массивов)

    Примечание: давалась как простая разминочная задачка для собеседования в Яндекс.

  3. Есть массив массив уникальных, ненулевых элементов (целые числа, 10 элементов):
    [123, 45, 5638, 49, -78, 22, 5, 345, 68, 7]

    После каких-то преобразований получился массив:

    [123, 5638, 22, 5, 68, 7, 0, 0, 0, 0]

    Задача: сформируйте ещё один массив из "потерянных" чисел (всех элементов 1-ого массива, которых нет во втором).

    Примечание: давалась как простая разминочная задачка для собеседования в Яндекс.

Где еще можно разобраться с подобными задачами

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