저는 문자열을 입력으로 사용합니다. 테스터. 문자열의 각 알파벳 수를 찾고 싶습니다. 나는 HashMap을 사용해 보았습니다. 하지만 배열을 사용하여 구현하고 싶습니다. 몇 가지 방법을 제안 해주세요.배열을 사용하여 각 알파벳 수를 계산합니다.
1
A
답변
1
지도를 사용하면 글자가 키이고 값은 개수가 더 쉽습니다. 배열을 사용하는 것은 더 까다 롭습니다. 각 문자에 숫자를 할당하고 해당 숫자를 배열의 인덱스로 사용하고 배열에 개수를 저장할 수 있습니다. 따라서 'A'는 1, 'B'는 2 등입니다. 알고리즘은
- 다음 문자열을 가져옵니다.
- 문자의 색인을 가져옵니다.
- 증가 물론 1
에 의해 배열의 해당 인덱스의 값은 널 검사 및 무엇이든을 할 필요가있다.
사실 논리적으로 맵입니다. 지도를 사용할 때 위의 2 단계를 수행합니다.
1
ArrayList<Character> ch = new ArrayList<Character>();
ArrayList<Integer> count = new ArrayList<Integer>();
someMethod(String input) {
for(char c : input.toCharArray()) {
if(ch.indexOf(c) != -1) {
i.set(ch.indexOf(c), i.get(ch.indexOf(c))+1);
} else {
ch.add(c);
i.add(1);
}
}
}
1
당신은 Multiset
iunterface를 구현하는 컬렉션을, 즉 HashMultiset
(구글 구아바 라이브러리에서 가져온 두)를 사용합니다. Multiset
은 컬렉션 개체의 수를 유지하도록 설계되었습니다
Multiset<String> m = HashMultiset.create(Arrays.asList("a", "a", "b", "c", "b", "a"));
// m.toString() prints "a x 3, b x 2, c x 1"
// m.count() gives 6
2
당신은 문자 번호 값을 할당 ASCII를 사용할 수 있습니다
:
int[] letters = new int[128]; // There are 128 different possible characters.
for(int i = 0; i < input.length; i++) {
char current = input.charAt(i);
int index = Character.getNumericValue(char);
letters[index]++;
}
1
하나, 당신이 먼저 배열을 만들 수있는 방법 charAt (index) 메서드를 사용하여 문자열을 통과하고 현재 char을 배열의 문자열과 비교합니다. 일치하는 항목이 있으면 값을 증가 시키거나 배열의 새 항목으로 추가합니다.
관련 문제
- 1. for 루프를 사용하여 배열의 인덱스 수를 계산합니다.
- 2. 계산 항목 수를 기준으로 페이지 수를 계산합니다.
- 3. 단어 목록을 검토하고 알파벳 순서로 단어를 계산합니다.
- 4. 배열을 알파벳 순으로 정렬
- 5. 스택의 프레임 수를 계산합니다.
- 6. 특정 요소 수를 계산합니다.
- 7. daterange에서 주 수를 계산합니다
- 8. 배열. 히스토그램. 배열을 부분 집합으로 나누고 각 그룹의 요소 수를 계산합니다. Java
- 9. MySQL의 DISTINCT 행 수를 계산합니다.
- 10. 배열을 파이썬에서 알파벳 순서로 정렬하기
- 11. OpenCV - 검정 픽셀 수를 계산합니다.
- 12. Android는 동적으로 열 수를 계산합니다.
- 13. 자바 스크립트에서 항목 수를 계산합니다.
- 14. $ .grep()에서 반환 된 항목 배열을 계산합니다.
- 15. 무한 메모리로 K & R 방법을 사용하여 비트 수를 계산합니다.
- 16. SiteCatalyst에서 버튼 클릭 수를 계산합니다.
- 17. XCode의 URL에있는 파일 수를 계산합니다.
- 18. JSON의 총 개체 수를 계산합니다.
- 19. Perl 연결의 패킷 수를 계산합니다.
- 20. 앵커 태그의 클릭 수를 계산합니다.
- 21. 프롤로그에서 유사한 사실 수를 계산합니다.
- 22. 남은 총 근무일 수를 계산합니다.
- 23. .count없이 목록의 각 요소를 계산합니다.
- 24. 각 문자의 빈도를 문자열로 계산합니다.
- 25. 계층 구조에서 직접 자식 수를 계산합니다.
- 26. Mapreduce for Java Appengine을 사용하여 순 사용자 수를 계산합니다.
- 27. 다양한 파일의 다양한 요소 수를 계산합니다.
- 28. 디렉토리에 포함 된 파일 수를 계산합니다.
- 29. Jquery의 페이지 매김에 대한 div 수를 계산합니다.
- 30. YouTube로 이동하는 YouTube 플레이어 클릭 수를 계산합니다.
각 알파벳? 각 편지? – talnicolas
다른 콜렉션 대신 배열을 사용하려는 이유 f/w ??? 질문을 올바르게 설명하십시오. – buch11