我有一個關於使用輸入和輸出迭代器的練習題。功能的標題是如下輸入和輸出迭代器
template<class InpIter,class OutpIter>
OutpIter my_unique_copy(InpIter first, InpIter last, OutpIter result)
該函數應的元素從所述範圍複製[第一,最後]導致。在連續的重複元素組中,只有第一個值被複制。返回值是元素複製到的範圍的末尾。 複雜性:線性
我有一個想法,做剛琢磨了一點幫助,因爲我不是迭代器舒適又不失
template<class InpIter,class OutpIter>
OutpIter my_unique_copy(InpIter first, InpIter last, OutpIter result){
InpIter current=first;
first++;//point to second element
while(first!=last){
while(*first==*current){//Keep comparing elements to current to see if they're same
first++;
}
result=current;
current=first;
result++;
first++;
}
return result;
}
好的,問題是什麼? :) – jrok
編譯器不會咬人......讓自己感覺舒適的唯一方法就是試試看。 – Cogwheel
您也可以使用'unique_copy()' – Kunal