알고리즘/Study

[바킹독의 실전 알고리즘] 0x08 스택의 활용 복습 -C++

hectick 2022. 2. 25. 17:28

앞으로 작성할 내용들은 유튜브에서 바킹독님의 알고리즘 강의를 들은 내용을 토대로 하여,

필요할 경우 전공으로 배운 내용을 조금씩 엮어 복습한 내용입니다.

바킹독의 실전 알고리즘 0x08강 링크

 

강의내용 복습

수식의 괄호 쌍

괄호의 종류 : () {} ...

 

올바른 수식인지 스택을 이용해 판단하는 법(FILO)

문자열을 순서대로 읽어들이면서, 여는 괄호가 나오면 스택에 push한다.

닫는 괄호가 나오면 스택에 가장 최근에 들어온 여는 괄호와 짝을 이룰경우, 여는 괄호를 스택에서 pop 하면 된다. 스택이 비어있을 경우나 짝이 맞지 않는 경우는 올바르지 않은 수식이다.

문자열을 다 읽었을때 스택이 비어있다면 올바른 수식 !! 괄호가 남아있다면 올바르지 않은 수식이다.

 

올바르지 않은 괄호쌍 예시

짝이 안맞음 : ( }

짝을 지어주지 못한 닫는괄호가 남아있음 : ( ) }

문자열 처리를 다 했는데 스택에 짝을 지어주지 못한 여는괄호가 남아있음 : ( { }

 

연습문제 복습

강의 후반부 및 아래 링크로 들어가면 나오는 문제들 중 해당 강의에 맞는 연습문제들을 풀고

정답코드와 비교하며 얻은 내용들을 간단히 정리한 내용입니다.

연습문제 링크

 

 

 

 

 

*다 풀었다