인프런 커뮤니티 질문&답변

미죵2님의 프로필 이미지

작성한 질문수

[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편

DFS와 BFS (백준 1260)

1260 문제 풀이에서는 함수 global로 변수 선언

해결된 질문

24.01.05 22:15 작성

·

113

1

유형1 문제 풀이에서는 함수 선언에서 global visited, graph 로 선언해줬는데, 왜 여기서는 안하신건가요?

답변 1

2

개발자로 취직하기님의 프로필 이미지

2024. 01. 06. 20:44

안녕하세여 미죵2님!

결론부터 말씀드리면 global을 선언하는 것이 정석이고, 동일하게 작성했어야 덜 헷갈리셨을텐데 괜히 제가 생략했네요

저도 여러가지를 시도해보고 생략이 가능한지 시도해보던 중 생략해도 정답이 나와서 이 코드를 사용했습니다. Python에서 정의한 문법에 따르면 '함수 내에서 전역 변수를 수정할 경우 global로 선언해야 된다'라고 정의해서 global keyword를 명시적으로 사용하는 것이 가장 안전하고 정석인데, 경우에 따라 생략을 해도 정답이 나오더라고요!

저도 이 현상을 이해해보고자 생략했던 걸 강의 때도 사용했는데, 경우에 따라 오답으로 처리되는 경우도 있어서 global을 반드시 명시하는 것이 가장 좋습니다!

미죵2님의 프로필 이미지
미죵2
질문자

2024. 01. 07. 18:05

ㅎㅎ빠른 답변 감사합니다! 덕분에 더이상 dfs 푸는게 괴롭지 않습니다..!!ㅋㅋ

개발자로 취직하기님의 프로필 이미지

2024. 01. 07. 18:30

너무 다행이네요 ㅎㅎ 궁금한 점 있으시면 언제든지 더 질문 남겨주세요! 공부 화이팅입니다 :)

미죵2님의 프로필 이미지

작성한 질문수

질문하기