上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 29 下一页

2012年2月28日

未知链表长度的情况下从中随机取k个数 [原]

摘要: 问题:有一个未知长度的链表,要求在其中随机抽取k个节点作为样本(即如果有n个节点,则每个节点被取出的概率是k/n,而n是未知的)。链表只能顺序读取一遍。(保证链表节点数>k) 思路:先取出前k个节点,以后没到一个节点,就以一定的概率将其与已取出的k个节点随机交换。具体来说,记链表为A,从A[1]一直扫到A[K],并取出作为最初的k个节点,记为B。继续往下扫,扫到A[i](i>k)时,以k/i的概率将其取出,并与B中的某个节点交换(B中有k个节点,每个节点被换出的概率都是相等的,即1/k);如果A[i]没被取出(概率为(i-k)/i),就继续往下扫。最后扫完A,得到的B即为所求。 证 阅读全文

posted @ 2012-02-28 14:07 龙豆 阅读(1107) 评论(0) 推荐(0)

解决NVIDIA显卡驱动“没有找到兼容的图形硬件”的问题 [转]

摘要: [经博主验证有效的版本] http://tieba.baidu.com/f?kz=1041263540 因为inf文件很多,不同inf对应不同的厂家,对此我在驱动之家找到了各个inf文件对应的厂家:NVAC.INF = ACER、NVAM.INF = ASUS Mobile、NVAO.INF = APPLE Mobile、NVBL.INF = Compaq/HP mobile 、NVDM.INF = DELL Mobile、NVFM.INF = FUJITSU Mobile、NVGM.INF = GATEWAY Mobile/Laptop、NVIB.INF = IBM、NVLT.IN... 阅读全文

posted @ 2012-02-28 00:12 龙豆 阅读(17518) 评论(0) 推荐(0)

2012年2月27日

CUDA4.0 + VS2010 + Win7 64 + VAssistX 安装经验 [转]

摘要: 参考了很多网上的教程,自己摸索的几天CUDA4.0安装完毕。再次感谢前辈的各种教程,现把我的安装方法提供出来,给还在探索的新手参考一下。我的环境:Win7 64旗舰 ,GTX580 + ATI5450,使用双显卡为了单机调试,使用ATI卡为了防止搞不清楚程序在那个卡上跑CUDA。要安装的是:CUDA 4.0 64位 + VS2010旗舰基本安装:1. 显卡驱动,ATI装公版驱动,显示器在此卡上连接,GTX580不连接显示器。 N卡驱动,装270.81版,这是CUDA4.0要求的版本,初次安装为了少出错,最好安装指定版本驱动。[注:参见 解决NVIDIA显卡驱动“没有找到兼容的图形硬件”的问题 阅读全文

posted @ 2012-02-27 22:16 龙豆 阅读(2856) 评论(2) 推荐(0)

2012年2月26日

连续幂求和 [原]

摘要: 求 方法一:O(logn)是由于每次还要计算改进: 方法二: 1 /* 2 * n阶矩阵A, 求A+。。。+A^k, 结果模mod。 3 * 4 * 类比上式:(注意这里从A开始加(而不是1),故略有不同) 5 * m = {{f1}, {x}} 6 * m1 = {{1}, {0}} 7 * m2 = {{x, 0}, {0, x}} 8 * 9 * mm = {{f(r)}, {x^r}}10 *11 * facor = {{1+x^(r/2), 0}, {0, x^(r/2)}}12 */13 14 15 #include <cstdio>16 ... 阅读全文

posted @ 2012-02-26 17:09 龙豆 阅读(970) 评论(0) 推荐(0)

求数组众数的不同算法分析 [原]

摘要: 对于绝对众数(次数一定大于n/2), 可有最坏情况下O(n)的分治算法。(数字两两比较,如果两个数不同,则两个数都丢弃;如果两个数相同,则丢弃其中一个数。对剩下的数同样处理,最后只剩一个数为众数) 而对与一般的众数问题,可有两种方法:一、修改快排:1、取轴值x, 根据快排的过程,小于x的放在左边,大于x的放在右边。同时统计x的出现次数T。2、如果X左边的个数(不算X)多于T,向左递归;同理,如果X右边的个数对于T,向右递归。 时间复杂度:O(nlgn) 二、利用数组统计。如果已知原数组的范围为[0...m], 则可以直接利用数组。否则,需要用散列。时间复杂度为O(n),但空间复杂度较高。 阅读全文

posted @ 2012-02-26 16:06 龙豆 阅读(7529) 评论(1) 推荐(0)

poj-1064 Cable master **

摘要: 1 /* 2 * poj-1064 Cable master.cpp 3 * 4 * Created on: 2012-2-26 5 * Author: LongDou 6 * 7 * 8 * 二分, 化为整数存储,下界为1(cm),上界为最长绳的长度 9 *10 */11 #include<cstdio>12 using namespace std;13 14 const double eps = 1e-7; //注意精度15 const int maxn = 10000 + 10;16 17 int n, k, cable[maxn];18 ... 阅读全文

posted @ 2012-02-26 15:00 龙豆 阅读(630) 评论(0) 推荐(1)

2012年2月19日

Latex中插入C代码 [转]

摘要: 用LaTeX写论文时,插入C++源代码有专门的宏包,方法如下: 1 \usepackage{listings} 2 3 \lstset{language=C++}%这条命令可以让LaTeX排版时将C++键字突出显示 4 5 \lstset{breaklines}%这条命令可以让LaTeX自动将长的代码行换行排版 6 7 \lstset{extendedchars=false}%这一条命令可以解决代码跨页时,章节标题,页眉等汉字不显示的问题 8 9 \begin{lstlisting}10 11 %paste your C++ code here12 13 \end{lstlisting... 阅读全文

posted @ 2012-02-19 00:06 龙豆 阅读(4174) 评论(0) 推荐(0)

LaTeX首行缩进 [转]

摘要: LaTeX 默认的第一段不是首行缩进的, 这不符合我们的中文习惯.要实现首行缩进也很简单,在导言区加入宏包首行 \usepackage{indentfirst} 就可以了. (LaTeX 学习博客 (http://latex.yo2.cn) , 白色印记.)使用命令 设置 缩进的距离 \setlength{\parindent}{2em} ,这里的 2em 表示缩进 2 个字符位置.如果有一个段落你不想首行缩进, 在段落前使用命令 \noindent .同样的, 你要保证这一段是首行缩进, 使用命令 \indent, 如果使用了 CJK 宏包, 还可以用\CJKindent. 阅读全文

posted @ 2012-02-19 00:04 龙豆 阅读(2924) 评论(0) 推荐(0)

LaTeX技巧203:如何实现等号对齐 [转]

摘要: 我们在进行公式的输入排版的时候,通常希望公式比较齐整,所以需要一些等号对齐,或者左对齐,关于公式的左对齐前文已经介绍了方法。http://blog.sina.com.cn/s/blog_5e16f1770100ggwo.html 下面我们来介绍如何实现等号的对齐,主要是两种方法,第一是使用align这一环境,第二是使用eqnarray环境。我们演示如下, 演示效果图: 演示代码: 1 \documentclass{article} 2 \pagestyle{empty} 3 \setcounter{page}{6} 4 \setlength\textwidth{207.0pt} 5 6 \.. 阅读全文

posted @ 2012-02-19 00:03 龙豆 阅读(3613) 评论(0) 推荐(0)

2012年2月17日

poj-3250 Bad Hair Day **

摘要: 1 /* 2 * DA-term-Bad Hair Day.cpp 3 * 4 * 这是一种解法,还可以用 “单调队列” 来做(见后。。) 5 * 6 * Created on: 2011-12-2 7 */ 8 9 #include <iostream>10 using namespace std;11 12 const int maxn = 80000 + 5;13 14 int h[maxn], n;15 int num[maxn], cow[maxn]; //num[i]:第i头牛能看到的牛数16 //cow[i]:在第i头牛东边第一个比i高的牛17 18... 阅读全文

posted @ 2012-02-17 18:46 龙豆 阅读(244) 评论(0) 推荐(0)

上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 29 下一页

导航