더북(TheBook)

# 친구 관계 리스트

# A와 B가 친구이면

# A의 친구 리스트에도 B가 나오고, B의 친구 리스트에도 A가 나옴

fr_info = {

    ‘Summer’: [‘John’, ‘Justin’, ‘Mike’],

    ‘John’: [‘Summer’, ‘Justin’],

    ‘Justin’: [‘John’, ‘Summer’, ‘Mike’, ‘May’],

    ‘Mike’: [‘Summer’, ‘Justin’],

    ‘May’: [‘Justin’, ‘Kim’],

    ‘Kim’: [‘May’],

    ‘Tom’: [‘Jerry’],

    ‘Jerry’: [‘Tom’]

}

 

print_all_friends(fr_info, ‘Summer’)

print()

print_all_friends(fr_info, ‘Jerry’)

 

icon_result 실행 결과

 

Summer

John

Justin

Mike

May

Kim

 

Jerry

Tom

 

프로그램 15-1은 그래프에서 연결된 모든 꼭짓점을 탐색하는 알고리즘이므로 ‘그래프 탐색 알고리즘’이라고도 불립니다. 싸이월드에서는 이와 같은 그래프 탐색 알고리즘을 사용해 모든 회원의 친척을 뽑아내고 촌수 관계까지 계산하는 것입니다.

이제 이 알고리즘에 친밀도(촌수) 계산 기능까지 넣어 보겠습니다.

 

 

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.