摘要: (1)插入排序 (2)简单的快速排序 原理:利用分治的思想,将数组排序范围最左端的元素作为参照,将比其小的元素移到其左边,将比其大的元素移动到其右边,在分别对两边的进行递归排序即可。 (3)更好的几种快速排序 1、双向划分 2、随机选取参照元素 将sp出的元素与[sp, ep]中随机的某个元素进行交 阅读全文
posted @ 2018-03-16 23:31 赵永驰 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 对磁盘文件进行排序,文件包含最多一千万条记录,每条记录都是7位的整数,无其他相关数据,每个整数只出现一次,由于某种系统需要,只能提供1MB左右内存。由于是实时系统,最多运行几分钟就能给出回应,十秒钟是比较理想的运行时间。 准确的问题描述: 输入:一个包含n个正整数的文件,每个数都小于n,其中n=10 阅读全文
posted @ 2018-03-16 20:01 赵永驰 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 问题:输入具有n个整数的向量arr,输出向量的任意连续子向量和的最大值 特殊情况(1、当向量都为正数时,为整个向量 2、当向量都为负数时,为0,即空子串 ) 1、O(n2)的算法 (循环对所有情况进行遍历) 其中有个小细节就是 注意sum(i, j-1) 和 sum(i, j)的关系,不要每次在求和 阅读全文
posted @ 2018-03-16 19:02 赵永驰 阅读(4376) 评论(0) 推荐(0) 编辑