• Daum
  • |
  • 카페
  • |
  • 테이블
  • |
  • 메일
  • |
  • 카페앱 설치
 
카페정보
카페 프로필 이미지
전산직공무원 - 홍재연
 
 
 
카페 게시글
자유 게시판 국가직 7급 시험 1달 전, 자료구조 문제 하나 풀어 봄!
홍재연 추천 0 조회 219 24.09.13 20:11 댓글 6
게시글 본문내용
 
다음검색
댓글
  • 24.09.13 23:01

    첫댓글 1. While문은 queue.popleft한 정점마다 실행되는데, queue에 들어가는 정점은 시작 정점이거나 방문되지않은(not in + visited)정점이므로 n번 실행
    2. 각 인접한 정점을 찾는 과정은 정점에 연결된 간선을 중복없이(not in) 찾는 것과 같으니 연산시간은 O(간선수)
    3. 2.의 연장선으로 각 정점에 대한 간선을 중복없이 탐색하는 알고리즘
    4. BFS이니 위상정렬에 활용가능

  • 24.09.14 10:36

    2,3번 알고리즘 다시보니 간선을 중복없이 찾는 것은 아니네요 그래도 수행시간은 O(2e) =O(e)

  • 24.09.14 02:31

    4번 위상정렬은 불가능할거라 생각합니다 만약 3번 노드를 방문하기전 {1,2}번 노드를 방문하는게 조건이라면 1번 노드의 인접노드가 {3,4}인 경우 2번 방문전에 3번을 방문하게 됩니다

  • 24.09.14 03:03

    다시 보니까 4번에 활용한다는걸 보기 알고리즘을 그대로 사용한다면으로 생각했는데 천천히 읽어보니 2번이 n개의 노드를 각각 방문하는데 O(n) 인접노드를 탐색하는데 O(n)해서 O(n^2)으로 답인거같네요

  • 작성자 24.09.14 04:20

    제가 추가로 하나 더 질문합니다.

    [질문] 그래프를 연결리스트로 표현하면 너비우선탐색 시간은 O(n+e)이다.

    1. 올바른 설명?
    2. 틀린 설명?

    어느 것인가요?

  • 24.09.14 16:29

    무방향 그래프를 인접리스트로 가질때 n개당 2개의 간선을 가지므로 O(n+2e) 상수를 생략하면 방향그래프가 e개의 간선을 같는 O(n+e)와 같네요, 정답 1번 올바른 설명 같습니다.

최신목록