题解 | #数据流中的中位数#

数据流中的中位数

https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1

#include <vector>
class Solution {
public:
    void Insert(int num) {
        nums.push_back(num);
        size++;
	  	//插入后直接进行排序
        if(size >= 2 && nums[size-1] < nums[size-2])
        {
            int temp = nums[size-1];
            int i = size-2;
            while(i>=0 && nums[i] > temp)
            {
                nums[i+1] = nums[i];
                i--;
            }
            nums[i+1] = temp;
        }
    }

    double GetMedian() { 
        if(size % 2  == 0)
        {
            return static_cast<double>(nums[size/2-1]+nums[size/2])/2;
        }
        else {
            return nums[size/2];
        }
    
    }
private:
    vector<int> nums;
    int size = 0;
};

全部评论

相关推荐

头像
04-17 09:29
已编辑
湖南农业大学 后端
睡姿决定发型丫:本硕末9也是0offer,简历挂了挺多,只有淘天 美团 中兴给了面试机会,淘天二面挂,美团一面kpi面,中兴一面感觉也大概率kpi(虽然国企,但一面0技术纯聊天有点离谱吧)
点赞 评论 收藏
分享
04-27 08:59
常州大学 Java
牛客139242382号:《两门以上汇编语言》
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务