Re: Переместить элементы в векторе
От: semlanik Россия  
Дата: 20.11.08 06:55
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте


А>Подскажите как можно в векторе переместить элемент из середины в начало, так что сохранить последовательность.


std::vector<type_t> xVector;
type_t xValue;

... //тут его заполнение

for(std::vector<type_t>::iterator xIter; xIter!=xVector.end(); xIter++)
{
   if((*xIter)==xValue)
   {
      xVector.insert(xVector.begin(), *xIter);
      std::vector<type_t>::iterator xEraseIter=xIter++;
      xVector.erase(xEraseIter);
   }
}

вот как-то так. Вроде структуры нарушить не должно. А вообще для таких вещей всеже по моему мнению праивльнее использовать двусвязные списки. std::list напимер...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.