上一页 1 ··· 5 6 7 8 9 10 11 下一页
摘要: 第六十一题:找出整型数组中两个只出现了一次的数(其余都出现了两遍)思路:凡是涉及到出现了两次,出现了一次的都用XOR。把所有的数都XOR一遍得到一个数tmp,这个数就是要得到的两个数的XOR。tmp肯定不为0,因为这要得的两个数一定不相等。则使用tmp为1的位可以把原数组分为两组。因为这两个数的这一位一定不同(1^0=1),所以这两个数一定各自落在一个组里,而出现了两次的同一个数也会在同一组里。重新对各个组XOR一编即可找到这个组中唯一出现一次的数了。整个过程遍历了两次数组,复杂度O(2n)=O(n)void twoSingleNum(const int *a,int cnt){ int... 阅读全文
posted @ 2013-03-28 09:24 iyjhabc 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 第七十一题:求a的b次方思路1:循环乘积思路2:half=a^(b/2) 即a^b=half*half,复杂度从O(n)降为O(logn)PS:除以二可以用>>1代替,判断可以否整除2可以用 & 1代替,位操作提高系效率。double helper(double base,int power){ if(power==1)return base; if(power==-1)return 1/base; if(power%2==0){ double half=helper(base,power/2); return half*half; }els... 阅读全文
posted @ 2013-03-28 08:57 iyjhabc 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 内存池STL实现:内存池(Memory Pool)是一种内存分配方式。 通常我们习惯直接使用new、malloc等API申请分配内存,这样做的缺点在于:由于所申请内存块的大小不定,当频繁使用时会造成大量的内存碎片并进而降低性能。 内存池则是在真正使用内存之前,先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用。当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续申请新的内存。这样做的一个显著优点是尽量避免了内存碎片,使得内存分配效率得到提升。 在内核中有不少地方内存分配不允许失败. 作为一个在这些情况下确保分配的方式, 内核开发者创建了一个已知为内存池(或者是 &qu 阅读全文
posted @ 2012-12-12 15:42 iyjhabc 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 第二章 防御性编程编程过程中使用assert()确保程序正确。习惯于先以测试者的身份编写测试程序,再以开发者的身份编写代码。修改代码的过程中用测试程序来检验结果。这样效率高。 阅读全文
posted @ 2012-12-10 21:10 iyjhabc 阅读(171) 评论(0) 推荐(0) 编辑
摘要: mySQL建立数据库 CREATE DATABASE databasename选择数据库 USE databasename从cmd进入数据库 mysql -u root -p databasename建立表 CREATE TABLE tablename(col1 type1,col2 type2........)删除表 DROP TABLE tablename删除行 DELETE FROM table WHERE ....如果不加WHERE将删除整个表,因此几乎必须加上WHERE查看表结构 DESCRIBE tablename插入行 INSERT INTO table(colname1,col 阅读全文
posted @ 2012-11-24 14:53 iyjhabc 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 原链接:http://www.cnblogs.com/justinzhang/archive/2012/04/10/2441199.html 记得大二参加数学建模的时候,开始接触了动态规划,在听过张老师的课后,当时使用matlab写了背包问题的代码,记得使用递归实现的。总之,对这个问题认识得非常的不清楚。以前强制记了好几次代码,过一段时间又忘了。虽然每次看书的时候还是可以回想起解题思路,但是... 阅读全文
posted @ 2012-11-07 16:05 iyjhabc 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 原链接:http://www.cnblogs.com/heaad/archive/2010/12/23/1914725.html遗传算法 ( GA , Genetic Algorithm ) ,也称进化算法 。 遗传算法是受达尔文的进化论的启发,借鉴生物进化过程而提出的一种启发式搜索算法。因此在介绍遗传算法前有必要简单的介绍生物进化知识。 一.进化论知识 作为遗传算法生物背景的介绍,下面内容... 阅读全文
posted @ 2012-11-07 11:08 iyjhabc 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 原链接:http://blog.csdn.net/hguisu/article/details/79961851. PageRank算法概述 PageRank,即网页排名,又称网页级别、Google左侧排名或佩奇排名。 是Google创始人拉里·佩奇和谢尔盖·布林于1997年构建早期的搜索系统原型时提出的链接分析算法,自从Google在商业上获得空前的成功后,该算法也... 阅读全文
posted @ 2012-11-07 00:00 iyjhabc 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 原链接:http://blog.csdn.net/hguisu/article/details/8013489HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell University ) 的Jon Kleinberg 博士于1997 年首先提出的,为IBM 公司阿尔马登研究中心( IBM Almaden Research... 阅读全文
posted @ 2012-11-06 23:54 iyjhabc 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。二叉树性质:1、二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。2、二叉树第i层上的结点数目最多为2^(i-1)个(i≥1)3、深度为k的二叉树至多有2^k-1... 阅读全文
posted @ 2012-11-05 17:37 iyjhabc 阅读(727) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 下一页