#include <bits/stdc++.h>
using namespace std;
const int maxSize = 100;
template <class T>
class seqList
{
private:
int length;
T data[maxSize];
public:
seqList() { length = 0; }
seqList(T a[], int n);
~seqList(){};
int Length() { return length; };
T get(int i);
int locate(T i);
void insert(int i, T x);
T Delete(int i);
void printList();
};
template <class T>
seqList<T>::seqList(T a[], int n)
{
if (n <= maxSize)
{
for (int i = 0; i < n; i++)
{
data[i] = a[i];
}
length = n;
}
else
{
cout << "error" << endl;
}
}
template <class T>
T seqList<T>::get(int i)
{
return data[i];
}
template <class T>
int seqList<T>::locate(T i)
{
for (int j = 0; j < length; j++)
{
if (data[j] == i)
{
return j;
}
}
cout << "not found" << endl;
return -1;
}
template <class T>
void seqList<T>::insert(int i, T x)
{
if (length >= maxSize)
{
cout << "error" << endl;
return;
}
for (int j = length - 1; j >= i; j--)
{
data[j + 1] = data[j];
}
length++;
data[i] = x;
}
template <class T>
T seqList<T>::Delete(int i)
{
T temp = data[i];
for (int j = i; j < length - 1; j++)
{
data[j] = data[j + 1];
}
length--;
return temp;
}
template <class T>
void seqList<T>::printList()
{
for (int i = 0; i < length; i++)
{
cout << data[i] << endl;
}
}
int main()
{
int n = 10;
int a[n];
for (int i = 0; i < n; i++)
{
a[i] = i + 1;
}
seqList<int> student(a, n);
student.printList();
cout << "-------------------" << endl;
student.insert(0, 1);
student.printList();
cout << "-------------------" << endl;
student.Delete(5);
student.printList();
system("pause");
return 0;
}