알고리즘/leetcode
[leetcode] Median of Two Sorted Arrays ( Java )
Yanoo
2021. 12. 9. 00:08
728x90
반응형
문제
leetcode Median of Two Sorted Arrays 풀이 ( 자바 )
풀이
생각해낸 방법이 우선순위큐에 저장하면서 총 사이즈를 저장하고 중간 지점의 데이터를 poll 할 때 평균을 구하려고 했다. 시간 복잡도가 빠를 것이라고 생각했지만 생각보다 느렸음.
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
PriorityQueue<Integer> pq = new PriorityQueue<>();
int size = 0;
for(int i = 0; i < nums1.length; i++) {
pq.add(nums1[i]);
size += 1;
}
for(int i = 0; i < nums2.length; i++) {
pq.add(nums2[i]);
size += 1;
}
int cnt = 0;
if(size % 2 == 0) {
double ans = 0;
for(int i = 0; i < size; i++) {
double now = (double) pq.poll();
if((i == (size/2)) || (i == ((size/2) - 1)))
{
ans += now;
}
}
System.out.println(ans);
return (double) (ans / 2) ;
} else {
for(int i = 0; i < size; i++) {
double now = (double) pq.poll();
if(i == (size / 2)) {
return now;
}
}
}
return 0;
}
그래서 다른 분 풀이를 봤는데 훨씬 빨랐다. 궁금하신 분은 확인해 보자 => link
728x90
반응형