摘要:
/*sicily 一道找中位数的题目 条件限制是内存小 , 不足以存下全部数字 2M的内存空间 , 最大数目去到 500000 ;初略估算 : 一个Int 4个字节 4 * 500000 = 2000000个字节 , 1MB = 1024 * 1024 个字节 = 1048576个字节 2Mb就是 208000个字节 , 如果把所有数字都存放的话 , 在没有空间运行程序了 。因此考虑建一个堆 , 但是堆的大小只有 N/2 , 这样的话 , 还有1MB的运行空间 , 当后一半数据输入的时候,动态把堆的其中无用节点弹出,新的数值插入堆。*/#include <stdio.h>#incl 阅读全文