您的位置:首页 > Web前端

剑指offer-63.数据流中的中位数

2017-05-11 23:46 363 查看
题目:如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。

思路:首先插入num,然后进行排序,然后判断size是奇数还是偶数



class Solution {
public:
vector<int>res;
void Insert(int num)
{
res.push_back(num);

}

double GetMedian()
{
int size = res.size();
sort(res.begin(), res.end());
if (size % 2 == 0)
return (double)(res[size/2] + res[size/2 - 1])/2;
else
return (double)res[size / 2];

}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: