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

数据流中的中位数

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

package main

var arr []int
func Insert(num int){
	if len(arr) == 0 {
        arr = append(arr, num)
    } else {
        arr = append(arr, num)
        for i := len(arr) - 2; i >= 0 ; i-- {
            if arr[i] > arr[i + 1] {
                arr[i], arr[i + 1] = arr[i + 1], arr[i]
            } else {
                break
            }
        }
    }
}

func GetMedian() float64{
    var mid float64
    if (len(arr))%2 == 0 {
        mid = float64(arr[len(arr)/2]+arr[len(arr)/2-1]) / 2
    } else {
        mid = float64(arr[len(arr)/2])
    }
    return mid
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务