내 문제는 성명서는 데이터를 얻을 때 데이터 구조에 저장하고 카운터를 유지하는 것과 비슷합니다. 이와 유사한 것이 이미 존재하는 경우 데이터 구조에서 유사한 것을 검색하면 카운터가 증가합니다 내 데이터에는 제한이 없습니다. 데이터는 때로는 매우 큰 수 있습니다. 그래서 자바의 초급되고 어떤 데이터 구조를 잘 내 문제에 대한 효율적인 알고 싶습니다.내 응용 프로그램에 가장 적합한 Java 데이터 구조는 무엇입니까?
1
A
답변
3
"데이터"를 키로, 카운터를 값으로 사용하여 HashMap을 원합니다. 이 O (1) "포함"확인, 검색 및 삽입 시간을 가지고 있기 때문에
http://docs.oracle.com/javase/1.4.2/docs/api/java/util/HashMap.html
그것이 좋은 선택입니다 이유입니다. 데이터를 정렬 할 필요가없는 한 훌륭한 선택입니다.
테스트되지 않은 코드를 시작해야합니다. String
을 데이터 유형으로 바꿉니다. 맞춤 클래스 인 경우 hashCode()
과 equals()
을 오버로드해야합니다.
HashMap<String, Integer> map = new HashMap<String, Integer>();
...
Integer i = map.get(data);
if(i == null) {
map.put(data, 1);
} else {
map.put(data, i + 1);
}
1
소리 당신은 HashMap<YourClass, Integer>
(link)을 사용할 필요가있다.
값은 카운터이므로 정수입니다. 키가있는 항목이 있는지 확인하십시오. 그렇지 않으면 값을 1로 추가하고, 그렇지 않으면 이전 값에 1을 더한 값을 추가합니다.
Integer 대신 값을 최적화하여 정수를 래핑하고 증가시킬 수있는 사용자 정의 클래스로 만들 수 있습니다. 이렇게하면 증가 할 때마다 해시 맵에 삽입 할 필요가 없습니다.
관련 문제
- 1. Java - 내 JAVA 응용 프로그램에 가장 적합한 회계 모듈은 무엇입니까?
- 2. Java - Graph에 가장 적합한 구현 구조는 무엇입니까?
- 3. 데몬 응용 프로그램에 가장 적합한 언어는 무엇입니까?
- 4. 내 응용 프로그램에 가장 적합한 네트워킹 구현은 무엇입니까?
- 5. C#에서이 배열에 적합한 데이터 구조는 무엇입니까?
- 6. 빠른 쿼리를위한 범위를 저장하는 데 가장 적합한 데이터 구조는 무엇입니까?
- 7. RDBMS에서 정렬 된 목록에 가장 적합한 데이터 구조는 무엇입니까?
- 8. 이 계층 구조에 가장 적합한 개체 기반 데이터 구조는 무엇입니까?
- 9. 문자열을 값에 매핑하는 데 가장 적합한 데이터 구조는 무엇입니까?
- 10. 가운데에서 요소를 제거하는 데 가장 적합한 데이터 구조는 무엇입니까?
- 11. 프로그램에 가장 적합한 포트는 무엇입니까?
- 12. WinForms 응용 프로그램에 가장 적합한 데이터 액세스 모델
- 13. 이 상황에 적합한 데이터 구조는 무엇입니까?
- 14. '간단한'주소록 응용 프로그램에 가장 적합한 데이터/표시 선택
- 15. C# 응용 프로그램에 가장 적합한 데이터베이스 선택
- 16. MVC 웹 응용 프로그램에 가장 적합한 .NET 기반보고 도구는 무엇입니까?
- 17. NoSQL은 데스크톱 응용 프로그램에 적합한 데이터 솔루션입니까?
- 18. 사전 프로그램에 맞는 데이터 구조는 무엇입니까?
- 19. Java 응용 프로그램에 적합한 네트워킹 솔루션을 선택하십시오.
- 20. WPF & EF를 사용하는 비즈니스 응용 프로그램에 가장 적합한 아키텍처는 무엇입니까?
- 21. ASP.net 응용 프로그램에 가장 적합한 perfmon 카운터는 무엇입니까?
- 22. Java 애플리케이션에 가장 적합한 SOA 아키텍처는 무엇입니까?
- 23. MVC 패러다임이 웹 응용 프로그램에 가장 적합한 이유는 무엇입니까?
- 24. 웹 응용 프로그램에 가장 적합한 워크 플로 란 무엇입니까?
- 25. 파이썬 명령 줄 응용 프로그램에 가장 적합한 레이아웃은 무엇입니까?
- 26. 소프트웨어 카탈로그 응용 프로그램에 가장 적합한 업데이트 메커니즘은 무엇입니까?
- 27. XML 만 반환하는 웹 응용 프로그램에 가장 적합한 방법은 무엇입니까?
- 28. Ruby on Rails 응용 프로그램에 가장 적합한 웹 서버는 무엇입니까?
- 29. 중간 복잡성 웹 응용 프로그램에 가장 적합한 기술은 무엇입니까?
- 30. 데이터베이스 응용 프로그램에 가장 적합한 기능 언어는 무엇입니까?
멋진 최적화; 그런 생각을하지 않았어. +1 –