题解 | #数据流中的中位数#
数据流中的中位数
https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param num int整型
* @return 无
*/
const nums = [];
export function Insert(num: number) {
// 插入排序
if(nums.length === 0){
nums.push(num);
}else{
nums.push(num)
//然后对后面的进行插入排序(后面往前插入)
for (let i = 1; i < nums.length; i++) {
let pre = i-1;
let current = nums[i];//undefined
while ( nums[pre] > current) {
nums[pre + 1] = nums[pre]
pre--;
}
//找到了一个位置就是说这个数小于当前值
nums[pre + 1] = current;
}
}
return nums;
}
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param 无
* @return double浮点型
*/
export function GetMedian(): number {
// 找到中位数
if (nums.length % 2 === 0) {
//偶数
return (nums[nums.length / 2] + nums[nums.length / 2 - 1]) / 2;
} else {
//奇数
return nums[Math.floor(nums.length / 2)];
}
}

汤臣倍健公司氛围 393人发布