홈>
O (n) 시간에 20을 곱한 두 개의 숫자를 얻으려고합니다. 여기서 해시 맵을 사용하려고합니다.
내 테스트 사례는 와이즈 비즈
1과 4 여야하는 배열 인덱스 1과 5를 제공합니다.
int arr[] = {2, 4, 1, 6, 5, 40, -1};
public static int[] multToTwenty(int arr[]) {
HashMap<Integer, Integer> hm = new HashMap<>();
for (int i = 0; i < arr.length; i++) {
if (hm.containsKey(20 / arr[i])) {
return new int[]{hm.get(20 / arr[i]), arr[i]};
}
hm.put(arr[i], i);
}
return new int[]{-1, -1}; // Nothing found
}
- 답변 # 1
관련 자료
- python - 문제는 1에서 num까지 곱하여 num이되는 두 개의 숫자를 찾는 것입니다
- multiplying - R에 두 개의 객체를 곱하십시오
- c++ - 두 줄이 동형이 아닌지 어떻게 알 수 있습니까?
- mongodb - 수집 된 두 데이터 사이의 두 날짜 찾기
- python - 두 개의 무작위로 생성 된 숫자가 0이 될 때까지 곱하는 방법은 무엇입니까?
- regex - 숫자가있는 줄 찾기
- django - 해당 프로세스 유형을 찾을 수 없습니다
- javascript - URL에서 두 개의 숫자 얻기
- javascript - 배열에서 같은 숫자를 모두 찾습니다
- javascript - 두 개의 값으로 find ()를 사용하는 방법
- c++ - 링크 된 목록으로 표시되는 두 개의 큰 숫자를 곱하십시오
- python - 목록에서 가장 많이 발생하는 두 문자열을 찾는 방법은 무엇입니까?
- java - a + b + c = 0이되도록 배열에서 삼중 항 (a, b, c)를 찾습니다
- AVR 어셈블러로 2 개의 16 비트 숫자를 곱하십시오
- 셀에있는 긴 텍스트에서 단어 찾기 (Excel VBA)
- java - 반복되지 않는 숫자 찾기
- python - 각 이미지에 가장 가까운 두 개 찾기
- python - numpy 배열의 각 두 행의 평균을 찾는 방법
- python - 텍스트 파일 내에서 한 줄의 숫자 합계를 찾는 방법은 무엇입니까?
- rest - 파일 다운로드 요청을 어떻게 찾습니까?
관련 질문
- java : 가능한 조합의 모든 순열을 확인 해야하는 항목 모음을 효율적으로 줄이는 방법은 무엇입니까?
- Java에서 부분적으로 구조 파일을 준비하는 가장 좋은 방법은 무엇입니까?
- algorithm : O (1)에서 이진 트리를 구성합니까?
- Java의 수집 스택 데이터 구조의 효율성
- algorithm : 파이프는 2 차 방정식의 무증상의 긴축에서 무엇을 의미합니까?
- java : 알고리즘은 노래의 가장 좋은 부분을 얻습니다
- algorithm : 아래의 재발 관계 질문을 해결하는 방법
- algorithm : 알고리즘의 단계 카운트 메소드를 사용하여 단계를 계산합니다.
- algorithm : Algoritm이 최악의 경우, 평균 또는 최적의 경우를 반영하는지 확인하십시오.
- java : 센티넬 선형 검색, 배열 범위를 늘릴 필요가 있습니다
20/i
정수 나누기이므로j=20/i
그i*j == 20
를 의미하지 않습니다 . 추가 확인을 추가해야합니다 :그리고 코드에 또 다른 오류가 있습니다 :
a[i]
요소를 반환합니다 인덱스i
대신 . 돌아와야합니다