여러 번 표현이 그 안에 있는 괄호와 관련하여 균형이 맞는지 찾아야 합니다. 균형이 잡혔다는 것은 각 왼쪽 대괄호에 해당하는 오른쪽 대괄호가 있고 대괄호 순서가 적절하게 정렬되었음을 의미합니다. 이것은 대괄호가 많이 사용되는 프로그램이나 수학적 표현을 작성할 때 중요합니다. 이 주제에서는 대괄호를 포함하는 표현식이 균형을 이루는지 여부를 프로그래밍 방식으로 알아내는 방법을 볼 것입니다.
제거를 통해
이 방법에서는 가장 안쪽에 있는 대괄호 쌍을 찾아 null 값으로 바꿉니다. 모든 브래킷 쌍이 교체될 때까지 이 작업을 계속합니다. 여전히 일부 대괄호가 남아 있으면 표현식이 균형을 이루지 않은 것입니다. 그렇지 않으면 표현식이 균형을 이루는 것으로 나타납니다.
예
def brackets(expression): all_br = ['()', '{}', '[]'] while any(x in expression for x in all_br): for br in all_br: expression = expression.replace(br, '') return not expression # calling the function input_string = "([]{}()" if brackets(input_string): print(input_string,"balanced") else: print(input_string,"Not balanced")
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
([]{}() Not balanced