나는이 문제를 해결하기 위해 내 두뇌를 감싸고있는 것처럼 보일 수는 없지만 다른 요소가있는 배열이 있다고 가정 해 보겠습니다. 첫 번째 배열의 고유 요소만으로 다른 배열을 만들고 싶다면 Map, HashSets 등을 사용하지 않고 (java에서 다른 것을 가져 오지 않고) 어떻게 할 것인가?Java : 배열의 고유 항목
0
A
답변
3
간단한 무차별 대입 알고리즘.
배열을 두 번 반복하면 요소가 반복되는지 확인하십시오. 배열에 추가하지 않고 계속하십시오. O(N^2)
복잡도 대신 O(N)
복잡도를 사용하여 Map
또는 Set
0
Cratylus의 답변 - 또는 더 나은 설명은 harpun의 의견을 참조하십시오. O (n) 복잡도가 인 솔루션의 경우 "의사 코드"일뿐입니다.
foreach element1 in array:
duplicate = false
foreach element2 in array:
if element 1 == element 2:
duplicate = true
break // out of inner loop
if duplicate:
// duplicate
else:
// not duplicate
물론이보다 깨끗하게 약간 더 높은 수준으로 발현 될 수있다. "포함"의 정의가 분명해야합니다. foreach element in array:
if contains(array, element):
// duplicate
관련 문제
- 1. 셀 배열의 고유 항목 식별
- 2. jQuery 배열의 고유 항목 필터링
- 3. 고유 항목
- 4. numpy 배열의 고유 항목 계산 : scipy.stats.itemfreq의 속도가 느린 이유는 무엇입니까?
- 5. 배열의 고유 정수 인쇄
- 6. 배열의 고유 한 조합
- 7. 배열의 고유 값 계산
- 8. 배열의 고유 값 찾기
- 9. 신속한 배열의 고유 값
- 10. 배열의 PHP 고유 번호
- 11. 배열의 고유 값만 보유합니다.
- 12. 배열의 고유 값 PHP
- 13. 배열의 모든 중복 항목 찾기
- 14. JQuery와 선택의 고유 항목
- 15. 데이터베이스에 고유 항목 삽입
- 16. 클릭시 고유 항목 추가
- 17. ObservableCollection의 WPF 고유 항목
- 18. 파이썬 목록의 고유 항목
- 19. VBA의 고유 항목 수가
- 20. 고유 항목 확인 중?
- 21. CrawlSpider에서 고유 항목 내보내기
- 22. JPA 고유 항목
- 23. LINQ 고유 항목
- 24. 배열의 javascript 임의 항목?
- 25. 배열의 항목 위치 알기
- 26. 배열의 항목 위로 이동하기
- 27. 배열의 중복 항목 대체
- 28. 반복 배열의 다음 항목
- 29. json 배열의 항목 수
- 30. jQuery 배열의 항목 전환
당신은 객체가 * 유일한 * 경우 알 수있는 방법이 필요하므로 객체가 될 경우 *이 개체 #의 equals' 또는 주문에'java.util.Comparator''에 대한 신뢰 *를 확인할 수 있습니다 inserted가 이미 배열에 있습니다. –
정렬 방식을 직접 작성하고 루프를 반복합니까? java.util.Arrays를 가져올 수있는 경우 배열을 정렬하고 반복하여 중복을 제거 할 수 있습니다. – nhahtdh
배열을 정렬하고 반복하여 단일 루프에서 새 배열을 채울 수 있습니다. 복잡성 :'O (N * logN)'. – harpun