[알고리즘문제풀기] 중앙값 구하기

silver's avatar
Dec 10, 2024
[알고리즘문제풀기] 중앙값 구하기

정답

List

import java.util.Arrays; class Solution { public int solution(int[] array) { int answer = 0; int c = array.length/2; Arrays.sort(array); answer = array[c]; return answer; } }

streamAPI

import java.util.Arrays; class Solution { public int solution(int[] array) { return Arrays.stream(array).sorted().toArray()[array.length/2]; } }

다른 사람들이 작성한 정답

import java.util.Arrays; class Solution { public int solution(int[] array) { Arrays.sort(array); return array[array.length >> 1]; } }
💡

비트 시프트 연산자

>>는 비트 시프트 연산자로, 오른쪽으로 비트를 이동시키는 역할을 한다. array.length >> 1은 배열의 길이를 2로 나누는 것과 동일한 효과를 한다.
8(1000) >> 1을 하면 0100이 되어, 이는 4에 해당한다
 
Share article

silver