반응형

스택 3

[C언어] 스택을 다양한 방법으로 구현하기

알고리즘 Push 연산 IF Top> MAX Then (꽉 차면) Overflow (버퍼 오버플로우) Else (꽉 차지 않을 때) Top = Top +1 (Top 위치를 1 증가) Buffer[Top] = data (버퍼의 Top 위치에 data 보관) Pop 연산 IF Top=-1 Then (비었으면) Underflow (버퍼 언더플로우) Else data = Buffer[Top] (버퍼의 Top 위치의 값을 데이터에 설정) Top = Top -1 (Top 위치를 1 감소) 버퍼 크기 고정 본문 바로가기 버퍼 동적 할당 본문 바로가기 버퍼 크기 자동 확장 버퍼 크기 자동 확장, 동적 생성한 자료 보관 스택을 연결리스트로 구현 무료 동영상 강의로 보기 ​

스택 [C++ 소스]

스택 [C++ 소스] "본문 내용"은 언제나 휴일 본 사이트에 있습니다.//스택#include using namespace std; class Stack{ int *buffer; const int size; int top;public: Stack(int size):size(size) { top = -1; buffer = new int[size]; } ~Stack() { delete[] buffer; } bool Push(int data) { if(IsFull()) { return false; } top++; buffer[top] = data; return true; } int Pop() { if(IsEmpty()) { return 0; } int re = buffer[top]; top--; return ..

[C언어 소스] 스택 - 버퍼 크기 자동 확장

[C언어 소스] 스택 - 버퍼 크기 자동 확장언제나 휴일 티스토리 //스택 - 버퍼 크기 자동 확장 #include #include typedef struct Stack //Stack 구조체 정의{ int *buf;//저장소 int ssize;//저장소 크기 int top; //가장 최근에 보관한 인덱스}Stack; Stack *NewStack();//스택 생성자void DeleteStack(Stack *stack);//스택 소멸자int IsFull(Stack *stack); //스택이 꽉 찼는지 확인int IsEmpty(Stack *stack); //스택이 비었는지 확인void Push(Stack *stack, int data); //스택에 보관int Pop(Stack *stack); //스택에서 꺼냄..

반응형