#include<iostream>
#include"List.h"
using namespace std;
List::List(int size) {
m_Size = size;
data = new int[m_Size];
m_Length = 0;
}
void List::Create_List(int *a, int n) {
int i;
for(i=0;i<n;i++)
data[i] = a[i];
m_Length = i;
}
void List::Destroy_List() {
delete[]data;
}
bool List::List_Empty() {
return m_Length == 0;
}
bool List::List_Full() {
return m_Length == m_Size;
}
int List::List_Length() {
return m_Length;
}
int List::List_Search(int Element) {
for (int i = 0; i < m_Length; i++) {
if (Element == data[i])
return i;
}
return -1;
}
int List::Get_Elem(int i){
return data[i];
}
bool List::List_Insert(int i, int Element) {
if (i < 0 || List_Full() || i > m_Length)
return false;
else {
for (int j = m_Length; j >= i; j--)
data[j] = data[j-1];
data[i-1] = Element;
m_Length++;
return true;
}
}
bool List::Delete_Elem(int i) {
if (i < 0 || i > m_Length)
return false;
else {
for (int j=i; j<m_Length; j++)
data[j-1] = data[j];
}
m_Length--;
return true;
}
void List::List_Traverse() {
for (int i = 0; i < m_Length; i++)
cout << data[i] << endl;
}