BFS를 구현할 때
temp_list (큐)에서 temp (노드)를 꺼내면서 방문 처리를 하기 보다는,
temp_list (큐)에 temp (노드)를 집어넣을 때 방문 처리를 하는 방식이 중복이 덜 발생할 것으로 보입니다
7576번 - 토마토
temp_list (큐) 에서 꺼낼 때 원소를 넣을 때를 가정해보겠습니다.
(현재 상태) temp_list = [1, 2, 3, ..., n]
현재 상태에서, 큐 안에 존재하는 모든 원소 [1, 2, 3, ..., n]는 현재 방문 처리가 되어있지 않습니다.
=> 따라서 temp_list.append(1), temp_list.append(2), ... 등의 연산이 가능합니다.
=> 그렇기에 temp_list (큐) 안에 중복되는 원소가 들어갈 수 있습니다.
=> temp_list = [1, 1, 1, 2, 2, 2, ..., n, n, n] 과 같은 경우가 가능합니다.
큐 안에 중복되는 원소가 들어갈 수 있어서, 큐에 넣기 전에 방문 처리를 해주신다고 보면 될 것 같아요..!
댓글을 작성하려면 로그인해야 합니다.
kojoo87 2년 전
python 시간초과때문에 그런데 혹 줄일 수 있는 방법이 있을까요?