資料流中的中位數
題目:
如何得到一個資料流中的中位數?如果從資料流中讀出奇數個數值,那麼中位數就是所有數值排序之後位於中間的數值。如果從資料流中讀出偶數個數值,那麼中位數就是所有數值排序之後中間兩個數的平均值。我們使用Insert()方法讀取資料流,使用GetMedian()方法獲取當前讀取資料的中位數。
思路:
- 時間複雜度最小的是用大小堆來儲存中位數左右兩側的最大最小值,然鵝還沒複習到堆,暫時放一下
- 這裡使用暴力法:列表儲存輸入,在獲取時排個序先
程式碼:
import java.util.Collections;
import java.util.ArrayList;
public class Solution {
private ArrayList<Integer> list = new ArrayList();
public void Insert(Integer num) {
list.add(num);
}
public Double GetMedian() {
Collections.sort(list);
if(list.size()==0){
return null;
}
else if(list.size()%2==0){
return (list.get(list.size()/2-1)+list.get(list.size()/2))/2.0;
}else{
return Double.valueOf(list.get(list.size()/2));
}
}
}
相關文章
- 1202-資料流中的中位數
- 求資料流中的中位數問題
- JZ-063-資料流中的中位數
- 在 MySQL 中,如何計算一組資料的中位數?MySql
- Burpsuite中protobuf資料流的解析UI
- Java 中的資料流和函數語言程式設計Java函數程式設計
- 均值、中位數、眾數
- SAP 資料庫表 TCURX 在定義貨幣欄位小數點位數中的重要作用資料庫
- mysql 求分組中位數、環比、同比、中位數的環比、同比MySql
- goim 中的 data flow 資料流轉及思考Go
- 如何檢視錶中的二進位制流
- WebApi 中請求的 JSON 資料欄位作為 POST 引數傳入WebAPIJSON
- 數位線下場景大資料,解讀中國人的幸福年大資料
- Android ListView中複雜資料流的高效渲染(一)AndroidView
- Spring Cloud資料流中的組合函式支援SpringCloud函式
- Spark拉取Kafka的流資料,轉插入HBase中SparkKafka
- ServletRequest一旦讀取了流,流就關閉了,流中的資料一旦被消費就不能再次從流中讀取了,Servlet 是如何還能夠從ServletRequest流中讀取資料的Servlet
- 控制資料的小數位數 java / jsJavaJS
- 工作流中的資料持久化詳解!Activiti框架中JPA的使用分析持久化框架
- 資料庫中欄位資料型別以及約束資料庫資料型別
- php資料流中第K大元素的計算方法PHP
- Sql查詢 一個表中某欄位的資料在另一個表中某欄位中不存在的SQL
- vertica 中位數函式 MEDIAN 的使用函式
- 數位電路中的觸發器觸發器
- 二進位制中1的個數
- 兩個有序陣列的中位數陣列
- Redis中快取二進位制資料Redis快取
- 尋找兩個正序陣列中的中位數陣列
- 資料庫中的圖片欄位怎麼在報表中呈現資料庫
- 資料蔣堂|Hadoop中理論與工程的錯位Hadoop
- 隱私AI框架中的資料流動與工程實現AI框架
- hive將查詢資料插入表中某欄位無資料Hive
- 分塊=-=優雅的暴力=-=中位數模版
- python中如何取數字的後幾位Python
- awk 中的欄位、記錄和變數變數
- Oracle資料庫連結(DBLink)中如何訪問包含BLOB欄位的資料Oracle資料庫
- [java]利用IO流中的位元組流和緩衝流寫一個複製資料夾的小程式Java
- Vue 中雙向繫結 Vs 單向資料流Vue