本博客rss订阅地址: http://feed.cnblogs.com/blog/u/147990/rss

10 2013 档案

摘要:关于素数的基本介绍请参考百度百科here和维基百科here的介绍首先介绍几条关于素数的基本定理:定理1:如果n不是素数,则n至少有一个( 1, sqrt(n) ]范围内的的因子定理2:如果n不是素数,则n至少有一个(1, sqrt(n) ]范围内的素数因子定理3:定义f(n)为不大于n的素数的个数,则 f(n) 近似等于 n/ln(n) (ln为自然对数) ,具体请参考here求不超过n的素数 本文地址算法1:埃拉托斯特尼筛法,该算法的核心思想是:首先标记2~n的数都为素数,然后遍历2~n的数组,如果它是素数,就把它的倍数标记为非素数(即把所有素数的倍数都标记为非素数)代... 阅读全文
posted @ 2013-10-30 22:41 tenos 阅读(4000) 评论(2) 推荐(2) 编辑
摘要:题目地址:herepat 2-05求集合数据的均方差没什么可说的,大水题 1 #include 2 #include 3 int main() 4 { 5 int n; 6 scanf("%d", &n); 7 int data[n]; 8 double average = 0.0; 9 for(int i = 0; i 2 #include 3 using namespace std; 4 5 int main() 6 { 7 int num,times; 8 scanf("%d%d", &num, &times); 9 i.. 阅读全文
posted @ 2013-10-28 21:02 tenos 阅读(799) 评论(0) 推荐(0) 编辑
摘要:题目地址:hereThere areNgas stations along a circular route, where the amount of gas at stationiisgas[i].You have a car with an unlimited gas tank and it c... 阅读全文
posted @ 2013-10-26 19:59 tenos 阅读(2731) 评论(7) 推荐(0) 编辑
摘要:题目地址:here题目大意:几个小孩站一排,每个小孩有个等级值,现在给小孩发糖,发的时候要遵守2个规则:(1)每个小孩至少一颗糖(2)两个相邻的小孩中,等级大的小孩一定比等级小的小孩糖多,求发糖的数目的最小值。本文提供两个算法,第一个是我自己做题时用的,第二个是网上看题解时看到的算法1:该算法采用分... 阅读全文
posted @ 2013-10-26 14:55 tenos 阅读(6168) 评论(3) 推荐(1) 编辑
摘要:题目地址:here题目大意:一个整数数组中,只有一个数出现一次,其余数都出现3次,在O(n)时间,O(1)空间内找到这个出现一次的数对于”只有一个数出现一次,其余数出现2次“的情况,很简单,只要把数组中所有数异或的结果就是这个出现一次的数,leetcode上也有这个题目。关于本题:我们用一个大小为3... 阅读全文
posted @ 2013-10-25 16:32 tenos 阅读(898) 评论(0) 推荐(0) 编辑
摘要:题目地址:here题目大意:深拷贝一个链表,链表除了含有next指针外,还包含一个random指针,该指针指向字符串中的某个节点或者为空。节点定义为: struct RandomListNode { int label; RandomListNode *next, *random... 阅读全文
posted @ 2013-10-24 23:02 tenos 阅读(9568) 评论(1) 推荐(1) 编辑
摘要:题目地址:请戳我这一题在leetcode前面一道题word break 的基础上用数组保存前驱路径,然后在前驱路径上用DFS可以构造所有解。但是要注意的是动态规划中要去掉前一道题的一些约束条件(具体可以对比两段代码),如果不去掉则会漏掉一些解(前一道题加约束条件是为了更快的判断是字符串是够能被分词,... 阅读全文
posted @ 2013-10-24 11:14 tenos 阅读(2201) 评论(0) 推荐(0) 编辑
摘要:题目地址:http://oj.leetcode.com/problems/word-break/简单的动态规划问题,采用自顶向下的备忘录方法,代码如下: 1 class Solution { 2 public: 3 bool dictContain(unordered_set &dict, ... 阅读全文
posted @ 2013-10-23 20:10 tenos 阅读(1841) 评论(2) 推荐(0) 编辑
摘要:洗牌可以抽象为:给定一组排列,输出该排列的一个随机组合,本文代码中均以字符数组代表该排列算法1-算法3 都是在原序列的基础上进行交换,算法空间复杂度为O(1)算法1(错误):随机交换序列中的两张牌,交换n次(n为序列的长度),代码如下: 1 void Shuffle_randomSwap(char *arr, const int len) 2 { 3 for(int i = 1; i = 0; i--) 4 { 5 int a = rand()%len; 6 int temp = arr[i]; 7 arr[i] = arr[a]... 阅读全文
posted @ 2013-10-23 14:36 tenos 阅读(8072) 评论(4) 推荐(4) 编辑
摘要:咋一看,这是个很简单的问题,但是如果n是个不确定的数呢?比如服务器每天会收到数以亿计的请求,但是目前服务器端不希望保存所有的请求,只想随机保存这些请求中的m个。试设计一种算法,能够使服务器实时保存m个请求,并使这些请求是从所有请求中的大致等概率被选中的结果。注意:不到一天的结束,是不能提前知道当天所有请求数n是多少的。下面我们分两种情况讨论(1)n已知,(2)n未知。1 n已知可以将问题简化为:从集合A(a_1, a_2, … ,a_n),中随机选取m(0≤m≤n)个元素,使得每个数被选取的概率相等。可以很简单的计算每个数被选取的概率是m/n。如果集合A里面的元素本来就具有随机性, 每个元素在 阅读全文
posted @ 2013-10-11 20:36 tenos 阅读(9876) 评论(0) 推荐(1) 编辑


本博客rss订阅地址: http://feed.cnblogs.com/blog/u/147990/rss

公益页面-寻找遗失儿童

点击右上角即可分享
微信分享提示