Yığıtlarla (Stack) İşlemler

Bu yazımda yığıta (stack) eleman ekleme, eleman görüntüleme, eleman silme, yığıt boş ve dolu kontrollerini yapan C++ kodunu yazdım.

#include <iostream>
#define MAX 5
using namespace std;
void push(int stack[], int &top, int val);
int peek(int stack[], int &top);
void pop(int &top);
bool isFull(int &top);
bool isEmpty(int &top);
int main(){
	int stack[MAX], top = -1;
	push(stack, top, 5);
	push(stack, top, 10);
	push(stack, top, 18);
	push(stack, top, 84);
	push(stack, top, 95);
	push(stack, top, 61);
	push(stack, top, 78);
	push(stack, top, 29);
	while(!isEmpty(top)){
		cout << peek(stack, top) << " ";
		pop(top);
	}
	return 0;
}
bool isFull(int &top){
	if(top < MAX){
		return false;
	}
	return true;
}
void push(int stack[], int &top, int val){
	if(!isFull(top)){
		top++;
		stack[top] = val;
	}else{
		cout << "STACK DOLU!" << endl;
	}
}
int peek(int stack[], int &top){
	if(top>=0){
		return stack[top];
	}
	return -1;
}
void pop(int &top){
	if(top>=0){
		top--;
	}else{
		cout << "STACK BOS!" << endl;
	}
}
bool isEmpty(int &top){
	if(top == -1){
		return true;
	}
	return false;
}

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir