우리는 n
배열을 가지고 있습니다.이 배열은 모두 하나만 제외하고이 배열에서 균등하게 반복되었습니다. 우리는 홀수 번 반복되는 번호를 찾고 싶습니다.이것에 대한 탐욕적인 접근 방식은 무엇입니까?
나는 최적의 알고리즘이 O(n Log(n))
보다 더 복잡하다고 생각한다. 왜냐하면 우리가 배열을 정렬 한 다음 반복 할 수 있고 새로운 수를 볼 수 있기 때문에 누적기를 늘리면 누적기를 감소시키고 누적기를 줄이면 각 누적 기가 0이 아닌 멤버는 홀수 번 반복됩니다.
또한 알고리즘이 O(n)
보다 좋지 않다고 생각합니다. 그렇다면 O(Log(n))
이어야하고 정렬 된 배열이 필요하지만 초기 배열은 그렇지 않기 때문입니다.
숫자가 정수입니까? (중요합니다.) – Sneftel
'O (n)'공간을 사용하는 것이 좋으면'O (n)'에서 이것을 해결할 수 있습니다 : 숫자 값을 개수와 매핑하는 사전을 생성하십시오. – Dai
BTW, 알고리즘이 'O (n)'보다 좋을 수 없다는 결론에 결함이 있습니다 (결론은 맞지만). – Sneftel