Bon Voyage
Home
  • 분류 전체보기 (1)
    • 자료구조&알고리즘 (0)
    • 코딩 (0)
    • 자격증 공부 (0)
    • 취준 (0)
Home
  • 분류 전체보기 (1)
    • 자료구조&알고리즘 (0)
    • 코딩 (0)
    • 자격증 공부 (0)
    • 취준 (0)
블로그 내 검색

Bon Voyage

  • 자료구조&알고리즘

    [자료구조] 스택 (Stack)

    2023. 10. 23.

    by. 순늘봄

    스택 (Stack)

    스택은 "쌓다" 라는 의미를 가지고 있으며, 그 의미에 맞게 데이터를 차곡차곡 쌓아올린 형태의 자료구조이다. 아래와 같이 데이터가 순서대로 쌓이게 되고 가장 마지막에 삽입된 데이터가 가장 먼저 삭제되는 구조를 가지고 있다. 스택은 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 구조이며 데이터를 삽입할 때는 push 연산을 사용하며 데이터를 꺼낼 때는 pop 연산을 사용한다. 이 때 꺼내지는 데이터는 가장 최근에 삽입한 자료부터 나오게 된다. 이는 LIFO (Last In First Out) 구조이다.

     

    스택 연산: 

    · s.top(): 스택의 가장 위 데이터를 반환

    · s.pop(): 스택의 가장 위 데이터를 삭제

    · s.push(): 데이터 삽입

    · s.empty(): 스택이 비었다면 1 반환, 그렇지 않다면 0 반환

     

    출처:  https://ko.wikipedia.org/wiki/%EC%8A%A4%ED%83%9D

     

    예시 코드:

    #include <iostream>
    #include <algorithm>
    #include <stack>
    
    using namespace std;
    
    int main() {
    	stack <int> s;
    	s.push(7); //삽입
    	s.push(5);
    	s.push(4);
    	s.pop(); 
    	s.push(6);
    	s.pop();
    	while (!s.empty()) {
    		cout << s.top() << " ";
    		s.pop();
    	}
    	return 0;
    }

    '자료구조&알고리즘' 카테고리의 다른 글

    [알고리즘] 너비 우선 탐색 (Breadth First Search, BFS)  (0) 2023.10.24
    [자료구조] 큐 (Queue)  (2) 2023.10.23
    [알고리즘] 계수 정렬 (Counting Sort)  (1) 2023.10.23
    [알고리즘] 힙 정렬 (Heap Sort)  (1) 2023.10.22
    [알고리즘] C++ STL sort() 함수  (0) 2023.10.15

    댓글

    관련글

    • [알고리즘] 너비 우선 탐색 (Breadth First Search, BFS) 2023.10.24
    • [자료구조] 큐 (Queue) 2023.10.23
    • [알고리즘] 계수 정렬 (Counting Sort) 2023.10.23
    • [알고리즘] 힙 정렬 (Heap Sort) 2023.10.22
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
순늘봄

티스토리툴바