-
[알고리즘] Find Anagram Mappings알고리즘/배열 2021. 4. 22. 22:47
Problem
Key Point
- B 배열을 Map에 저장한다. (Key는 값이고, Value는 인덱스)
- A 배열에 대해 루프를 돌면서 값에 해당하는 인덱스를 찾아서 리턴한다.
Code
public class FindAnagramsMapping { public int[] solution(int[] A, int[] B) { int[] result = new int[A.length]; Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < B.length; i++) { map.put(B[i], i); } for (int i = 0; i < A.length; i++) { result[i] = map.get(A[i]); } return result; } public static void main(String[] args) { int[] A = {11, 27, 45, 31, 50}; int[] B = {50, 11, 31, 45, 27}; FindAnagramsMapping problem = new FindAnagramsMapping(); System.out.println(Arrays.toString(problem.solution(A, B))); } }
'알고리즘 > 배열' 카테고리의 다른 글
[알고리즘] Missing Ranage (0) 2021.06.12 [알고리즘] Find All Anagrams in a String (0) 2021.04.22 [알고리즘] Maximum Subarray (0) 2021.04.21 [알고리즘] Longest Substring (0) 2021.04.21 [알고리즘] Unique Email Addresses (0) 2021.04.21