关闭
当前搜索:

经典算法应用之七----10亿数据中取最大的100个数据

给出三种思路,仅供参考。。 1.思路一:根据快速排序划分的思想,每次分割之后只考虑比轴大的一部分,知道比轴大的一部分在比100多的时候,采用传统排序算法排序,取前100个。 step1:递归对所有数据分成[a,b),(b,d]两个区间,(b,d]区间内的数都是大于[a,b)区间内的数 step2:对(b,d]重复step1操作,直到最右边的区间个数小于100个。注意[a,b)...
阅读(93) 评论(0)

哈希表

散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(H...
阅读(87) 评论(0)

冒泡排序

//定义数组 static int[] nums = new int[] { 100, 99, 45, 56, 67, 78, 98, 8, 7, 65, 55, 43, 32, 23, 35, 36, 38, 37, 120, 150, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 30, 32, 31, 29, 28, 26, 2...
阅读(86) 评论(0)

仿微信红包【使用正态分布计算红包金额】

Program.cs代码:class Program { static void Main(string[] args) { //初始化要发起的红包基础数据 double total = 100; int num = 50; double min = 0.01;...
阅读(691) 评论(0)

笛卡尔积

Program.cs代码:class Program { //保存笛卡尔结果集的全局变量 public static List result = new List(); static void Main(string[] args) { var words = new L...
阅读(400) 评论(0)

二维傅立叶变换

最糟糕的是人们在生活中经常受到错误志向的阻碍而不自知,真到摆脱了那些阻碍时才能明白过来。 —— 歌德页面代码: <%--...
阅读(1040) 评论(0)
    个人资料
    • 访问:1297167次
    • 积分:18616
    • 等级:
    • 排名:第593名
    • 原创:312篇
    • 转载:932篇
    • 译文:123篇
    • 评论:297条
    博客专栏
    文章分类
    打赏
    如果你觉得我的文章对您有用,请随意打赏。 微信 支付宝