0001 template <typename T> int Vector<T>::deduplicate() { //删除无序向量中重复元素(错误版) 0002 int oldSize = _size; //记录原规模 0003 for ( Rank i = 1; i < _size; i++ ) { //逐一考查_elem[i] 0004 Rank j = find ( _elem[i], 0, i ); //在_elem[i]的前驱中寻找与之雷同者(至多一个) 0005 if ( 0 <= j ) remove ( j ); //若存在,则删除之(但在此种情况,下一迭代不必做i++) 0006 } 0007 return oldSize - _size; //向量规模变化量,即被删除元素总数 0008 }