0001 template <typename T> //向量的起泡排序(跳跃版) 0002 void Vector<T>::bubbleSort( Rank lo, Rank hi ) { //assert: 0 <= lo < hi <= size 0003 for( Rank last = --hi; lo < hi; hi = last ) 0004 for( Rank i = last = lo; i < hi; i++ ) 0005 if( _elem[i] > _elem[i + 1] ) //若逆序,则 0006 swap( _elem[ last = i ], _elem[ i + 1 ] ); //经交换使局部有序 0007 }