Given 2 dimensional sorted array(Both row and column wise sorted) write a efficient algo to find median.
# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | awoo | 154 |
8 | Dominater069 | 154 |
10 | luogu_official | 151 |
Given 2 dimensional sorted array(Both row and column wise sorted) write a efficient algo to find median.
Name |
---|
Looks very similar to finding k-th element of two sorted arrays, which I've seen at TC forums.
Use binary search over the value of the median. Complexity would be O(Rlog(C) log(MaxVal)).
Guess it can be done in a better way since this way you wouldn't use the fact that the columns are sorted.
It seems there is an O(n) algorithm to this problem.