题解 | #数据流中的中位数#
数据流中的中位数
https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1
package main import ( "sort" ) var arr []int func Insert(num int){ arr = append(arr, num) // sort 底层用的是快排,最坏的情况下, 时间复杂度位 O(nlogn) // 当然也可以用插入排序 sort.Slice(arr, func(i, j int) bool{return arr[i] < arr[j]}) } func GetMedian() float64{ size := len(arr) if size == 0 { return -1 } if size % 2 == 0 { return float64(arr[size/2 -1] + arr[size/2]) /2 } else { return float64(arr[size/2]) } }