zoukankan      html  css  js  c++  java
  • The One day 中位数的计算

    """
    中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。
    
    例如,
    
    [2,3,4] 的中位数是 3
    
    [2,3] 的中位数是 (2 + 3) / 2 = 2.5
    
    设计一个支持以下两种操作的数据结构:
    
    void addNum(int num) - 从数据流中添加一个整数到数据结构中。
    double findMedian() - 返回目前所有元素的中位数。
    
    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/find-median-from-data-stream
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
    """
    """
    author :jiyanjiao
    date : 2019-10-21
    """
    
    
    class MedianFinder:
        nuber_list = []
        sum = 0
        
        def __init__(self):
            """
            initialize your data structure here.
            """
           
        def addNum(self, num: int) -> None:
            self.nuber_list.append(num)
          
        def findMedian(self) -> float:
            nb = self.nuber_list
            oder_list = []
            le = len(nb)
            if le <=1:
                raise Exception("中位数至少需要两位数")
            for i in range(0, le):
                for j in range(i+1, le):
                    if nb[j] < nb[i]:
                        tmp = nb[i]
                        nb[i] = nb[j]
                        nb[j] = tmp
                oder_list.append(nb[i])
                print(nb[i])
                i += 1
            oder_le = len(oder_list)
            if oder_le % 2 == 0:
                m1 = (oder_list[int(oder_le/2)]+oder_list[int(oder_le/2)-1])/2
            else:
                m1 = oder_list[int(oder_le/2)]
            print(m1)
            return m1
    
    
    # Your MedianFinder object will be instantiated and called as such:
    if __name__ == '__main__':
        
        obj = MedianFinder()
        obj.addNum(1)
        obj.addNum(2)
        obj.addNum(4)
        obj.addNum(3)
        obj.addNum(5)
        param_2 = obj.findMedian()
        
  • 相关阅读:
    linux系统cpu和内存占用率
    虚拟机网卡设置
    C语言中打印返回值
    MQTT_DEMO
    MQTT-C-UDP_PUB
    MQTT-C-PUB
    结构体指针用法
    linux系统如何操作隐藏文件
    mqtt学习笔记
    XML文件的读取----cElementTree
  • 原文地址:https://www.cnblogs.com/jiyanjiao-702521/p/10818050.html
Copyright © 2011-2022 走看看