所以我push_back
为向量类编写了一个函数,现在我正在尝试计算摊销时间复杂度。我对编程的理论方面还很陌生,所以如果有人能引导我完成它,那就太棒了。
这是我的功能:
void Vector<T>::push_back(const T &e) {
if(vsize + 1 > capacity)
allocate_new();
array[vsize] = e;
vsize++;
}
这是我的allocate_new
功能:
void Vector<T>::allocate_new() {
capacity = vsize * 4;
T* tmp = new T[capacity];
for(int i = 0; i < vsize; i++)
tmp[i] = array[i];
delete[] array;
array = tmp;
}