Public Types |
typedef TVal * | TIter |
Public Member Functions |
| TVec () |
| TVec (const TVec &Vec) |
| TVec (const int &_Vals) |
| TVec (const int &_MxVals, const int &_Vals) |
| TVec (TVal *_ValT, const int &_Vals) |
| ~TVec () |
| TVec (TSIn &SIn) |
void | Load (TSIn &SIn) |
void | Save (TSOut &SOut) const |
void | LoadXml (const PXmlTok &XmlTok, const TStr &Nm="") |
void | SaveXml (TSOut &SOut, const TStr &Nm) const |
TVec< TVal > & | operator= (const TVec< TVal > &Vec) |
TVec< TVal > & | operator+ (const TVal &Val) |
bool | operator== (const TVec< TVal > &Vec) const |
bool | operator< (const TVec< TVal > &Vec) const |
const TVal & | operator[] (const int &ValN) const |
TVal & | operator[] (const int &ValN) |
int | GetMemUsed () const |
int | GetPrimHashCd () const |
int | GetSecHashCd () const |
void | Gen (const int &_Vals) |
void | Gen (const int &_MxVals, const int &_Vals) |
void | GenExt (TVal *_ValT, const int &_Vals) |
bool | IsExt () const |
void | Reserve (const int &_MxVals) |
void | Reserve (const int &_MxVals, const int &_Vals) |
void | Clr (const bool &DoDel=true, const int &NoDelLim=-1) |
void | Trunc (const int &_Vals=-1) |
void | Pack () |
void | MoveFrom (TVec< TVal > &Vec) |
void | Swap (TVec< TVal > &Vec) |
bool | Empty () const |
int | Len () const |
int | Reserved () const |
const TVal & | Last () const |
TVal & | Last () |
int | LastValN () const |
const TVal & | LastLast () const |
TVal & | LastLast () |
TIter | BegI () const |
TIter | EndI () const |
TIter | GetI (const int &ValN) const |
int | Add () |
int | Add (const TVal &Val) |
int | Add (const TVal &Val, const int &ResizeLen) |
int | AddV (const TVec< TVal > &ValV) |
int | AddSorted (const TVal &Val, const bool &Asc=true, const int &_MxVals=-1) |
int | AddBackSorted (const TVal &Val, const bool &Asc) |
int | AddMerged (const TVal &Val) |
int | AddVMerged (const TVec< TVal > &ValV) |
int | AddUnique (const TVal &Val) |
const TVal & | GetVal (const int &ValN) const |
TVal & | GetVal (const int &ValN) |
void | GetSubValV (const int &BValN, const int &EValN, TVec< TVal > &ValV) const |
void | Ins (const int &ValN, const TVal &Val) |
void | Del (const int &ValN) |
void | Del (const int &MnValN, const int &MxValN) |
void | DelLast () |
bool | DelIfIn (const TVal &Val) |
void | DelAll (const TVal &Val) |
void | PutAll (const TVal &Val) |
void | Swap (const int &ValN1, const int &ValN2) |
int | GetPivotValN (const int &LValN, const int &RValN) const |
void | BSort (const int &MnLValN, const int &MxRValN, const bool &Asc) |
void | ISort (const int &MnLValN, const int &MxRValN, const bool &Asc) |
int | Partition (const int &MnLValN, const int &MxRValN, const bool &Asc) |
void | QSort (const int &MnLValN, const int &MxRValN, const bool &Asc) |
void | Sort (const bool &Asc=true) |
bool | IsSorted (const bool &Asc=true) const |
void | Shuffle (TRnd &Rnd) |
void | Reverse () |
void | Reverse (int First, int Last) |
void | Merge () |
bool | NextPerm () |
bool | PrevPerm () |
void | MakeHeap () |
void | PushHeap (const TVal &Val) |
const TVal & | TopHeap () const |
TVal | PopHeap () |
template<class TCmp > |
void | MakeHeap (const TCmp &Cmp) |
template<class TCmp > |
void | PushHeap (const TVal &Val, const TCmp &Cmp) |
template<class TCmp > |
TVal | PopHeap (const TCmp &Cmp) |
template<class TCmp > |
void | PushHeap (const int &First, int HoleIdx, const int &Top, TVal Val, const TCmp &Cmp) |
template<class TCmp > |
void | AdjustHeap (const int &First, int HoleIdx, const int &Len, TVal Val, const TCmp &Cmp) |
template<class TCmp > |
void | MakeHeap (const int &First, const int &Len, const TCmp &Cmp) |
template<class TCmp > |
void | SortCmp (const TCmp &Cmp) |
template<class TCmp > |
bool | IsSortedCmp (const TCmp &Cmp) const |
void | Intrs (const TVec< TVal > &ValV) |
void | Union (const TVec< TVal > &ValV) |
void | Diff (const TVec< TVal > &ValV) |
void | Minus (const TVec< TVal > &ValV) |
void | Intrs (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const |
void | Union (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const |
void | Diff (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const |
int | IntrsLen (const TVec< TVal > &ValV) const |
| Get the size of the intersection (number of common elements) of two vectors. Method assumes both vectors are sorted in ascending order!
|
void | Minus (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const |
int | Count (const TVal &Val) const |
int | SearchBin (const TVal &Val) const |
int | SearchBin (const TVal &Val, int &InsValN) const |
int | SearchForw (const TVal &Val, const int &BValN=0) const |
int | SearchBack (const TVal &Val) const |
int | SearchVForw (const TVec< TVal > &ValV, const int &BValN=0) const |
bool | IsIn (const TVal &Val) const |
bool | IsIn (const TVal &Val, int &ValN) const |
bool | IsInBin (const TVal &Val) const |
int | GetMxValN () const |
TVal & | GetDat (const TVal &Val) const |
TVal & | GetAddDat (const TVal &Val) |
Static Public Member Functions |
static void | SwapI (TIter LVal, TIter RVal) |
template<class TCmp > |
static TIter | GetPivotValNCmp (const TIter &BI, const TIter &EI, const TCmp &Cmp) |
template<class TCmp > |
static TIter | PartitionCmp (TIter BI, TIter EI, const TVal Pivot, const TCmp &Cmp) |
template<class TCmp > |
static void | BSortCmp (TIter BI, TIter EI, const TCmp &Cmp) |
template<class TCmp > |
static void | ISortCmp (TIter BI, TIter EI, const TCmp &Cmp) |
template<class TCmp > |
static void | QSortCmp (TIter BI, TIter EI, const TCmp &Cmp) |
static TVec< TVal > | GetV (const TVal &Val1) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6, const TVal &Val7) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6, const TVal &Val7, const TVal &Val8) |
static TVec< TVal > | GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6, const TVal &Val7, const TVal &Val8, const TVal &Val9) |
Protected Member Functions |
void | Resize (const int &_MxVals=-1) |
TStr | GetXOutOfBoundsErrMsg (const int &ValN) const |
Protected Attributes |
int | MxVals |
int | Vals |
TVal * | ValT |