6 도의 Kevin Bacon 또는 "Bacon 's Law"는 "6 도의 분리"개념을 기반으로 한 팔러 게임이며, 지구상의 두 사람은 6 명 이하의 지인 링크가 있습니다. 영화 버프는 임의의 배우와 많은 배우 케빈 베이컨 사이의 가장 짧은 경로를 찾기 위해 서로에게 도전합니다. 할리우드 영화 산업에 관련된 사람은 영화 역할을 통해 6 단계 이내에 베이컨과 연결될 수 있다고 가정합니다. 2007 년 Bacon은 Sixdegrees.org라는 자선 단체를 시작했습니다. 2020 년 베이컨은 마지막 정도의 케빈 베이컨 (Kevin Bacon)이라는 팟 캐스트를 시작했습니다.
배우의 베이컨 수는 게임에 의해 정의 된 바와 같이 베이컨에서 가지고있는 분리 정도입니다. 이것은 Erdős Number Concept를 할리우드 영화 산업에 적용하는 것입니다. 베이컨 번호가 높을수록 배우의 케빈 베이컨과의 분리가 커집니다.
액터 X의 베이컨 번호 계산은 공동 상태 네트워크에 적용되는 "가장 짧은 경로"알고리즘입니다.
이 알고리즘은 C 언어로 작성됩니다.
배우 - 영화 데이터는 ../Data 디렉토리에 있습니다.
입력 형식은 다음과 같습니다.
movie1 (년)/surname_actor1, name_actor1/surname_actor2, name_actor2
movie2 (년)/surname_actor3, name_actor3/surname_actor4, name_actor4
String Tokenizer는 데이터 청소에 사용됩니다.
알고리즘은이 그래프의 정점 번호가 무엇인지 발견 한 후 데이터를 방향 변환 된 이분 그래프로 변환합니다.
그래프가 만들어지면 폭 넓은 첫 번째 검색은 모든 단일 배우의 베이컨 번호를 찾는 데 사용됩니다.
너비의 첫 번째 검색은 특정 액터와 케빈 베이컨 사이의 가장 짧은 연결 맵 거리에도 사용됩니다.
chmod 777 run.sh
./run.sh