Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)

Paste

Pasted as C++ by minhkhanh ( 5 years ago )
#include<iostream>
#include<string>
#include<vector>
using namespace std;

#define max_size 1000
#define rate_to_expand 2
int* initialize(int &maxsize) {
	
	int *a= new int[maxsize];
	return a;
}

int* growSize(int* array, int size, int& maxSize) {
	maxSize = maxSize * rate_to_expand;
	int* newarray = new int[maxSize];
	for (int i = 0; i < size; ++i) {
		newarray[i] = array[i];
	}
	if (array != NULL) delete[]array;
	return newarray;
}

void addElement(int*& array, int data, int& size, int& maxSize) {
	if (size + 1 > maxSize) {
		array = growSize(array, size, maxSize);
	}
	size = size + 1;
	array[size - 1] = data;
}

void swapvalue(int* x, int* y) {
	int temp = *x;
	*x = *y;
	*y = temp;
}


void addElementAtIndex(int* &array, int index, int data, int& size, int& maxSize) {
	if (index > size)return;
	addElement(array, data, size, maxSize);
	for (int i = size - 1; i >= index; i--) {
		swapvalue(array + i, array + i - 1);
	}

}

int* shrinkArray(int* array, int size, int& maxSize) {
	int* newarray = new int[size];
	for (int i = 0; i < size; i++) {
		newarray[i] = array[i];
	}
	delete[]newarray;
}

void removeElementAtIndex(int* array, int index, int& size, int maxSize) {
	for (int i = index + 1; i < size; i++) {
		array[i - 1] = array[i];
	}
	size--;
}

void printArray(int* array, int size) {
	for (int i = 0; i < size; ++i) {
		cout << *array << endl;
		array += 1;
	}
}
int main() {

}

 

Revise this Paste

Your Name: Code Language: