题解 | 数据流中的中位数-解法1-插入排序

数据流中的中位数

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

# -*- coding:utf-8 -*-
class Solution:
    arr=[]
    def Insert(self, num):
        # write code here
        if not  self.arr:
            self.arr.append(num)
        else:
            n=len(self.arr)
            index=0
            for i in   range(n):
                if self.arr[i]<=num :
                    index+=1
                    continue
            left=self.arr[:index]
            right=self.arr[index:]
            left.append(num )

            self.arr=left+right

    def GetMedian(self):
        # write code here
        #print(self.arr)
        n =len(self.arr)
        if n%2==0:
            mid =n//2
            #print(mid,self.arr)
            return  (self.arr[mid-1] +self.arr[mid])/2.0
        else:
            mid =n//2
            return self.arr[mid]
        



全部评论

相关推荐

昨天 22:17
北京大学
点赞 评论 收藏
分享
04-28 11:34
西北大学 运营
牛客4396号:不好意思,这个照片猛一看像丁真
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务