добрый день!
у меня имеется вот такое задание :
В одномерном массиве все отрицательный элементы переместить в начало массива, а остальные- в конец с сохранением порядка следования. ДОПОЛНИТЕЛЬНЫЙ массив заводить НЕ РАЗРЕШАЕТСЯ.
Вопрос:
1)Как можно реализовать данный алгоритм без использования дополнительных массивов.
И как я понимаю использовать алгоритмы сортировки тоже не получится т.к изменится порядок следования элементов.
Напишите хотябы сам принцип работы программы
ps В поиске ни чего не нашел подобного.
compiler
20.05.2007 20:07
я это вижу так..
проходим по массиву, находим первый отрицательный элемент сохраняем его в отдельную переменную, сдвиг-все до найденного елемента на один, в первый(или нулевой, смотря на реализацию) записываем найденный елемент, идем по вектору дальше...
теперь проблема вот в чем. Мне нужно запомнить отрицательный элемент в переменную потом надо сдвинуть все элементы которые были до отрицательного на 1 элемент те элемент который был до него должен занять его место как это сделать вот в чем главный вопрос.
compiler
20.05.2007 21:23
наверно нужно еще запоминать индекс найденного элемента и тогда все в цикле от начала до индекса...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.