인프런 커뮤니티 질문&답변
안녕하세요. 선생님.
작성
·
158
0
for (int i = 0; str[i] != '\0'; i++) {
if (str[i] == '(') s.push(str[i]);
else if (str[i] == ')') {
try
{
s.pop();
}
catch (exception e)
{
printf("NO\n");
return 0;
}
}
}
if (s.empty()) printf("YES\n");
else printf("NO\n");
==========================================
저는 (())) 와 같은 상황에서 맨 마지막에 )일때 예외 처리를 해주어서 프로그램을 종료시킬려고 했습니다. 하지만, 이상하게 pop했을때 오류가 발생했음에도 불구하고 catch 로 넘어가지 않았습니다. 혹시 그 이유에 대해서 알 수 있을까요?
퀴즈
57%나 틀려요. 한번 도전해보세요!
선택 정렬(Selection Sort) 알고리즘은 각 단계에서 어떤 작업을 수행하여 배열을 정렬하나요?
인접한 두 요소를 비교하여 필요시 교환합니다.
정렬되지 않은 부분에서 가장 작은(또는 큰) 값을 찾아 정렬된 부분의 올바른 위치로 옮깁니다.
현재 요소를 이미 정렬된 부분 배열의 적절한 위치에 삽입합니다.
배열을 분할하고 각 부분을 재귀적으로 정렬한 후 병합합니다.





