배열의 '무작위성'이 배열을 완전히 정렬 된 상태로 유지하기 위해 수행해야하는 스왑 수와 같다고 가정 해 보겠습니다.배열의 무작위성 배열의 무작위성
정렬 된 입력 배열을 사용하고 최대 '임의성'을 가진 배열을 반환하는 프로그램을 작성하고 싶습니다.
도와주세요.
배열의 '무작위성'이 배열을 완전히 정렬 된 상태로 유지하기 위해 수행해야하는 스왑 수와 같다고 가정 해 보겠습니다.배열의 무작위성 배열의 무작위성
정렬 된 입력 배열을 사용하고 최대 '임의성'을 가진 배열을 반환하는 프로그램을 작성하고 싶습니다.
도와주세요.
"스왑"정의 방법에 따라 다릅니다.
예를 들어 배열이 [1,2,3,4,5]
이고 스왑이 인접한 숫자 사이 여야하는 경우 최대 "임의성"이있는 배열은 역방향 [5,4,3,2,1]
이됩니다. 그러나 스왑이 임의의 두 숫자 사이에있을 수있는 경우 최대 "임의성"이있는 배열은 을 스왑으로 정렬하는 배열이됩니다 (예 : [5,1,4,2,3]
)
도 참조하십시오. – Amit4209211420
어떤 정렬 알고리즘을 사용하고 있습니까? – RPGillespie
빠른 정렬을 위해서는 5 회의 스왑이 필요합니다. – Amit4209211420
가능한 많은 배열이 종류. 예를 들어, 정렬 된 배열을 생산하기 위해 모두 다섯 스왑이 필요 5.
2,3,4,5,1
5,4,3,2,1
까지의 숫자 1을, 모든 요소가 위치를 벗어 났기 때문입니다.
일반적으로 질문은 '?'로 끝납니다. – RPGillespie
역순 정렬 된 배열 만 반환하면됩니다. – Quentin
http://en.wikipedia.org/wiki/Kendall_tau_distance – abligh