∥/ LIST.CPP #include qlist. h QList: QList(int n)从构造函数 f(n!=0) pData new intn else pData =0; n Size = n: nNumElem =0
// LIST.CPP #include "qlist.h" QList::QList(int n) // 构造函数 { if(n != 0) pData = new int[n]; else pData = 0; nSize = n; nNumElem = 0; }
QList: Append( nt nNewElem)∥/添加数据元素 if(suLlo return 0 pData[nNumElem ++]= nNewElem return 1
int QList::Append(int nNewElem) // 添加数据元素 { if(IsFull()) return 0; pData[nNumElem ++] = nNewElem; return 1; }
int QList: Insert( int nIndex, int nNewElem)∥插入数据元素 if(IsFullol nIndex >nNumElem nNumElem >=nSize return o ∥返回出错信息 for(int i= nNumElem; i> nIndex; i--) pData[=paa-1:∥移动 pDatanIndex]= nNewElem;/插入 nNumElem ++ ∥当前元素个数加 return 1 ∥操作正常
int QList::Insert(int nIndex, int nNewElem) // 插入数据元素 { if(IsFull() || nIndex > nNumElem || nNumElem >= nSize) return 0; // 返回出错信息 for(int i = nNumElem; i > nIndex; i --) pData[i] = pData[i - 1]; // 移动 pData[nIndex] = nNewElem; // 插入 nNumElem ++; // 当前元素个数加一 return 1; // 操作正常 }
It QList: Delete(int nIndex,int&rEem)∥删除数据元素 if(IsEmptyo ll nIndex >=nNumElem nNumElem ==0) return 0 rElem= pDatanIndex ∥保存被删元素值 for(inti= nIndex;i< nNumElem;i++)∥移动 pData[=pata+1];∥填补被删位置 nNumElem 当前元素个数减 return 1
int QList::Delete(int nIndex, int& rElem) // 删除数据元素 { if(IsEmpty() || nIndex >= nNumElem || nNumElem == 0) return 0; rElem = pData[nIndex]; // 保存被删元素值 for(int i = nIndex; i < nNumElem; i ++) // 移动 pData[i] = pData[i + 1]; // 填补被删位置 nNumElem --; // 当前元素个数减一 return 1; }
int QList:Find( int eLem)∥查找指定元素 for(int i=0; i nNumElem; i ++ if(pData[]== eLem) return ∥查找成功 return -1 ∥查找失败
int QList::Find(int nElem) // 查找指定元素 { for(int i = 0; i < nNumElem; i ++) if(pData[i] == nElem) return i; // 查找成功 return -1; // 查找失败 }