议题:快速排序实现之一(单向遍历)分析:算法原理:主要由两部分组成,一部分是递归部分QuickSort,它将调用partition进行划分,并取得划分元素P,然后分别对P之前的部分和P
之后的部分递归调用QuickSort;另一部分是partition,选取划分元素P(随机选取数组中的一个元素,交换...
分类:
其他好文 时间:
2014-06-03 10:00:23
阅读次数:
392
议题:快速排序实现之五(非递归实现,短序列优先处理,减少递归栈大小)分析:算法原理:此算法实现适用于系统栈空间不足够快速排序递归调用的需求,从而使用非递归实现快速排序算法;使用显示下推栈存储快速排序中的每一次划分结果
(将left和right都压入堆栈),并且首先处理划分序列较短的子序列(也就是在得...
分类:
其他好文 时间:
2014-06-03 08:23:29
阅读次数:
367
chuanbindeng 的
素数推断算法关于素数的算法是信息学竞赛和程序设计竞赛中常考的数论知识,在这里我跟大家讲一下寻找一定范围内素数的几个算法。看了以后相信对大家一定有帮助。
正如大家都知道的那样,一个数 n 假设是合数,那么它的全部的因子不超过sqrt(n)--n的开方,那么我们能够用这个性...
分类:
其他好文 时间:
2014-05-31 11:46:57
阅读次数:
209
http://acm.xmu.edu.cn/JudgeOnline/problem.php?id=1246求区间内素数个数,经典问题,区间长度10^6,数的取值最多能到10^12(此题范围稍小)用筛法搞出[2,根号b]范围内的素数,用这些素数再去筛[a,b]一个吐血的trick,1不是素数#incl...
分类:
其他好文 时间:
2014-05-31 04:37:27
阅读次数:
186
这是我目前知道的打素数表最快的方法了…………
差不多是O(n)的,100000以内花了0.005秒。 1 int prime[100005], np, vis[100005]; 2 3 void
get_prime(int n){ 4 mset(prime); mset(vis); 5 ...
分类:
其他好文 时间:
2014-05-30 23:26:36
阅读次数:
204
一、原题如果有一组物品,各个物品的质量已知,现有一个背包,背包可以容纳的质量总和S已知,问是否能从这N个物品中取出若干个恰好装入这个背包中。二、递归算法本质思想:设法尝试全部组合,当部分组合已经无法满足条件时,马上停止当前组合的尝试;若出现第一个满足条件的组合,马上停止尝试。使用递归回溯法实现。(感...
分类:
其他好文 时间:
2014-05-30 06:09:10
阅读次数:
254
调用: BLL.Area bll = new BLL.Area();//实例化BLL对象
DataTable dt = null; private void FormArea_Load(object sender, EventArgs e) {...
分类:
其他好文 时间:
2014-05-30 01:52:28
阅读次数:
249
缘由:我当时刚开始做android的时候,我接触过不同的人,也看到网络上看到的别人的问答。我发现,他们在一些认识上是错误的。
我这篇文章,权当作自己的复习,和方便其他人学习。 基本概念: 1.分辨率:
1920x1080,1280x720。它表示的是,在一个固定的屏幕尺寸下,该屏幕包含的像素数量。注...
分类:
其他好文 时间:
2014-05-30 01:41:16
阅读次数:
302
递归函数具有很好的可读性和可维护性,但是大部分情况下程序效率不如非递归函数,所以在程序设计中一般喜欢先用递归解决问题,在保证方法正确的前提下再转换为非递归函数以提高效率。函数调用时,需要在栈中分配新的帧,将返回地址,调用参数和局部变量入栈。所以递归调用越深,占用的栈空间越多。如果层数过深,肯定会导致...
分类:
其他好文 时间:
2014-05-29 23:14:47
阅读次数:
420
广度优先搜索&深度优先搜索(Breadth First Search &
Depth First
Search)BFS优缺点:同一层的所有节点都会加入队列,所以耗用大量空间;仅能非递归实现;相比DFS较快,空间换时间;适合广度大的图;空间复杂度:邻接矩阵O(N^2);邻接表O(N+E);时间复杂度:...
分类:
其他好文 时间:
2014-05-29 15:33:14
阅读次数:
407