Stack

괄호 검사란? 괄호의 종류로는 대중소([,]), ({,}), ((,))가 있는데 3가지 조건이 성립해야 한다. 조건 1 : 왼쪽 괄호의 개수와 오른쪽 괄호의 개수가 같아야 한다. 조건 2 : 동일 타입의 괄호에서 왼쪽 괄호는 오른쪽 괄호보다 먼저 나와야 한다. 조건 3 : 서로 다른 타입의 괄호 쌍이 서로를 교차하면 안 된다. 괄호 검사 예시 괄호 검사 알고리즘 문자열에 있는 괄호를 차례대로 조사하면서 왼쪽 괄호를 만나면 스택에 push() 오른쪽 괄호를 만나면 pop() 연산으로 스택의 top에 있는 괄호를 꺼냄 - 꺼낼 수 있는 요소가 없으면 즉, 스택이 비어 있으면 조건 2에 위배 - pop 한 왼쪽 괄호와 짝이 맞지 않으면 조건 3에 위배 마지막 괄호까지를 조사한 후에도 스택에 괄호가 남아 있으면..
스택(Stack) 이란? 스택이란 말 그대로 쌓아놓은 더미로 기본적으로 후입선출 방식으로 가장 최근에 들어온 데이터가 가장 먼저 나가는 형식의 자료구조입니다. 스택(Stack)의 연산 - 삽입(push) , 삭제(pop) - is_empty() : 스택이 공백상태인지 검사 - is_full() : 스택이 포화상태인지 검사 - peek(s) : 요소를 스택에서 삭제하지 않고 보기만 하는 연산 스택(stack)의 활용 분야 - 자료의 출력이 입력 순서와 역순으로 이루어져야 하는 경우 유용하며, 문서나 그림, 수식 등의 편집기에서 되돌리기(undo) 기능 --- 수행된 명령어들 중에서 가장 최근에 수행된 것부터 순서적으로 취소할 경우 - 함수 호출에서 복귀 순서를 기록하는 데 사용 - 문서나 소스코드에서 괄호..
행복한쿼콰
'Stack' 태그의 글 목록