일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- VS ERROR
- 리뷰
- 프로그래밍
- 지식나눔강좌
- Desktop
- 함수
- Programming
- Direct2D
- Visual Studio
- tipssoft
- 백준
- c
- CS
- 문법
- Win32
- 김성엽
- 티스토리
- 포인터
- 연산자
- 배열
- Javascript
- Kotlin
- doit코틀린프로그래밍
- Tips강좌
- 알고리즘
- c#
- Windows
- Tips프로그래밍강좌
- c++
- 이지스퍼블리싱
- Yesterday
- Today
- Total
목록스택 (4)
F.R.I.D.A.Y.
처음 들어간 데이터가 가장 마지막으로 출력되는 자료구조 자료구조를 따지면 가장 먼저 나오는 구조라고 불러도 이상하지 않을만큼 익숙한 자료구조이다. 스택 Last In First Out이란 단어로 설명이 가능하겠다. 스택은 두 개의 필수 명령이 있다. push pop 입력을 할 때[# 스택에 값을 넣을 때]는 push, 출력할 때[# 스택에서 값을 뺄 때]는 pop으로, 이 명령을 이용해 다음과 같은 작업을 수행한다고 가정하면 push 1 push 5 push 3 pop push 5 push 7 pop 스택은 다음과 같은 순서로 데이터를 관리한다. 구현 기본적으로 스택은 배열을 이용하며, 배열을 어떻게 이용하는가에 대한 방식을 설명한다고 볼 수 있다. 다음은 C++에서 스택을 구현한 클래스 코드이다. 더보..
포인터 파트에서 함수 호출 구조에 대해 잠깐 언급한 적이 있습니다. 이 포스트에서 그 내용을 다뤄볼 것입니다. 프로세스의 구조 프로세스[# 프로세스는 운영체제의 로더에 의해 프로그램이 메모리에 올라갈 때 CPU가 실행할 수 있도록 구조를 변경하여 메모리에 올라가 있는 바이트 코드를 의미합니다.]는 Windows 기준으로 하여 아래와 같은 구조[# 정확한 구조는 아니니, 이런 식으로 구성되어 프로세스에 올라간다고만 생각하기 바랍니다. 이 스택 프레임은 플랫폼, 언어, 개발자 구현 방식에 따라 달라질 수 있습니다.]를 가지고 있습니다. 코드 세그먼트 기계어(명령어) 데이터 세그먼트 문자열 상수 목록 전역 변수 static 변수 엑스트라 세그먼트 힙(Heap) 스택(Stack) 코드 세그먼트: 코드 세그먼트에..
길벗에서 출판한 책 에서 처음으로 나오는 알고리즘은 스택을 이용한 주가 스팬 계산입니다. 마침 스택에 대한 포스트도 연이어 작성 중인 와중에 이 책을 읽고 있어 잘됐다 싶어 포스트 주제로 선정하게 되었습니다. 주가 스팬을 구하는 기본적인 알고리즘 구조는 책에서 보실 수 있습니다. 저는 이 책에서 선보이는 의사 코드(pseudo code)를 C언어로 재구성하고자 합니다. 주가 스팬? 먼저 문제를 풀어보기 전에 주가 스팬이 무엇인지 알아봅니다. 주가 스팬은 다음과 같습니다. 왼쪽과 같은 주식 그래프가 존재한다고 생각해봅시다. 이때 1번 그래프는 앞에 주가 스팬을 판단할 값이 존재하지 않으므로 1번의 그래프 주가 스팬은 1입니다. 2번 그래프는 1번 그래프보다 값이 크므로 주가 스팬은 2입니다. 이는 5번 그..
아래 포스트에서는 소괄호() 만이 입력으로 들어왔기 때문에 굳이 스택을 만들지 않고 작성해도 되었지만, 만일 대-중-소괄호를 모두 이용한다면 어떻게 해야 할까요? 링크된 포스트의 코드로는 답이 되지 않습니다. BAEKJOON 9012 : 괄호 for C 스택을 이용하는 문제라고는 하지만 잘 생각해보면 굳이 스택을 사용하지 않아도 되는 문제입니다. 문제의 핵심은 결국 괄호의 특성을 이해하는 것이라고 생각합니다. 결국 괄호가 제 기능을 하기 위해서는 여는.. pang2h.tistory.com # BAEKJOON의 문제를 풀이하기 위한 용도가 아니므로 입력은 한 번만, 그리고 최대 100개의 문자를 받을 수 있도록 제한합니다. 스택을 만들자 만일 여러 종류의 괄호를 이용한다면 스택이 필요합니다. 물론 배열을 ..