Karger 's 알고리즘을 실행할 때마다 (반 무작위) 커트를 줄 것입니다. 그 커트가 최소 커트 일 확률은 P = 1/(n^2/2 - n/2)
입니다. 이것은 커트를 완전히 무작위로 선택하는 것보다 훨씬 낫습니다.
알고리즘을 한 번 실행하면 최소 자르기 가능성은 P
이지만받을 가능성은 1 - P
입니다. 알고리즘을 두 번 실행하면 min cut을 얻지 못할 확률은 (1 - P) * (1 - P)
입니다. 왜냐하면 처음으로 min 커팅을 놓치고 두 번째로 빠뜨려야하기 때문입니다.
꽤 괜찮습니다. 알고리즘을 두 번 실행하면 min cut을 찾을 확률이 높아집니다.
T
번 알고리즘을 실행하면 min cut을 얻지 못할 확률은 (1 - P)^T
입니다. 즉, min cut을 얻을 확률은 1 - (1 - P)^T
입니다.
이 시점에서 올바른 해결 방법을 얼마나 좋게 생각하십니까? 약간의 확률 (1,000,000에서 1)을 만들어 T를 구하십시오. 알고리즘을 실행해야하는 횟수입니다.
그것은 그것이 당신에게 최소 컷에 대해 추론 할 수있는 훨씬 더 쉽게 공식은 당신이 그런 C
1에 설정 특히,이다 발견하지의 (1/n)^C
기회보다 제공하기 때문에, T = C * (n choose 2) * ln(n)
을 설정하는 것이 일반적이다, 당신은 낮은이 그래프의 단일 노드를 무작위로 선택하는 것보다 잘못 잘라낼 가능성이 있습니다. 그래프가 크면 꽤 좋습니다.
요약하면 올바른 대답을 얻는 데 필요한 기준에 따라 C
을 선택하십시오. 얼마나 필요한지 잘 모르는 경우 C = 1
을 입력하고 알고리즘 (n choose 2) * ln(n)
번을 실행하면됩니다.
(이 수학의 대부분은 the wikipedia page에서 가져온 것입니다. 당신이 자세한 내용은 찾을 수 있습니다)
이 아주 잘 요약한다. 통계는 내 두뇌를 상하게한다. 그래서 이것은 많은 도움이된다! 감사! – Flyingcows00