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 123 ( 9 years ago )
void Increase(Stack* stack)
{
int* new_buffer = new int[stack->bufferSize * 2];
for (int i = 0; i < stack>bufferSize; i++)
{
new_buffer[i] = stack->buffer[i];
}
stack->bufferSize = stack->bufferSize * 2;
int* temp = stack->buffer;
stack->buffer = new_buffer;
delete temp;
}
void Push(Stack* stack, int data)
{
if (stack->top == stack->bufferSize)
{
Increase(stack);
}
stack->buffer[stack->top++] = data;
stack->bufferSize++;
}
int Pop(Stack* stack)
{
stack->bufferSize--;
return stack->buffer[stack->top--];
}
bool IsEmpty(Stack* stack)
{
if (stack->top == NULL)
{
return true;
}
return false;
}
void Delete(Stack* stack)
{
while (stack->top != NULL)
{
Pop(stack);
}
}
Revise this Paste