随笔分类 -  算法导论

算法导论学习笔记,记录,分享
摘要: 阅读全文
posted @ 2015-03-05 10:13 孙永杰 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-03-04 13:00 孙永杰 阅读(869) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-03-04 10:26 孙永杰 阅读(889) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-03-03 20:08 孙永杰 阅读(541) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-03-03 14:47 孙永杰 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-03-03 13:11 孙永杰 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-03-03 09:12 孙永杰 阅读(363) 评论(0) 推荐(0) 编辑
摘要:/* * IA_22.2BreadthFirstSearch.h * * Created on: Feb 13, 2015 * Author: sunyj */ #ifndef IA_22_2BREADTHFIRSTSEARCH_H_ #define IA_22_2BREADTHFIRSTSEARC... 阅读全文
posted @ 2015-02-26 19:33 孙永杰 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-02-12 20:39 孙永杰 阅读(268) 评论(0) 推荐(0) 编辑
摘要:转自 http://www.cnblogs.com/Anker/archive/2013/01/27/2879150.html 我还怕将来这篇日志被删除,所以粘贴了过来,这篇是一字未改的转贴 摘要: 本章介绍了散列表(hash table)的概念、散列函数的设计及散列冲突的处理。散列表类似与字典的目录,查找的元素都有一个key与之对应,在实践当中,散列技术的效率是很高的,合理的设计散函数和... 阅读全文
posted @ 2015-02-12 17:09 孙永杰 阅读(191) 评论(0) 推荐(0) 编辑
摘要:/* * IA_11.4OpenAddressing.h * * Created on: Feb 13, 2015 * Author: sunyj */ #ifndef IA_11_4OPENADDRESSING_H_ #define IA_11_4OPENADDRESSING_H_ #include #include #include class No... 阅读全文
posted @ 2015-02-12 16:34 孙永杰 阅读(862) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-02-12 13:50 孙永杰 阅读(692) 评论(0) 推荐(0) 编辑
摘要:11.2是第11章的主要内容,11章叫散列表(Hash Tables)11.2也叫散列表(Hash Tables) 11.3节讲散列函数(比如除尘散列法),11.4节讲处理碰撞的另外一种方法区别于链式法技术 散列技术,有两个事情要做,一是先哈希函数(11.3),二是解决碰撞技术(11.2链式解决碰撞,11.4开放寻址解决碰撞)。 /* * IA_11.2Cha... 阅读全文
posted @ 2015-02-12 12:53 孙永杰 阅读(624) 评论(0) 推荐(0) 编辑
摘要:带哨兵的双向链表,代码中我使用了nullptr,所以需要编译器升级,我的编译器是gcc/g++ 4.7.0这是可以的,编译的时候加参数—std=c++0x 节点中还可能有卫星元素 /* * IA_10.2LinkedLists.h * * Created on: Feb 13, 2015 * Author: sunyj */ ... 阅读全文
posted @ 2015-02-12 10:37 孙永杰 阅读(256) 评论(0) 推荐(0) 编辑
摘要:散列表比直接存储的唯一好处是,节省空间 阅读全文
posted @ 2015-02-11 19:58 孙永杰 阅读(259) 评论(0) 推荐(0) 编辑
摘要:注意n个空间的队列,有最多n - 1个元素 /* * IA_10.1queue.h * * Created on: Feb 13, 2015 * Author: sunyj */ #ifndef IA_10_1QUEUE_H_ #define IA_10_1QUEUE_H_ #include #include // ENQUEUE(Q, x) // Q... 阅读全文
posted @ 2015-02-11 17:04 孙永杰 阅读(217) 评论(0) 推荐(0) 编辑
摘要:1 /* 2 * IA_10.1_stack.h 3 * 4 * Created on: Feb 13, 2015 5 * Author: sunyj 6 */ 7 8 #ifndef IA_10_1_STACK_H_ 9 #define IA_10_1_STACK_H_1... 阅读全文
posted @ 2015-02-11 15:23 孙永杰 阅读(258) 评论(0) 推荐(0) 编辑
摘要:#include #include #include #ifdef __linux #include #include #endif void swap(int64_t* A, uint64_t i, uint64_t j) { int64_t tmp = A[i]; A[i] = A[j]; A[j] = tmp; } int64_t ... 阅读全文
posted @ 2015-02-10 10:56 孙永杰 阅读(675) 评论(1) 推荐(0) 编辑
摘要:以下摘自网络 随机化快排:快速排序的最坏情况基于每次划分对主元的选择。基本的快速排序选取第一个元素作为主元。这样在数组已经有序的情况下,每次划分将得到最坏的结果。一种比较常见的优化方法是随机化算法,即随机选取一个元素作为主元。这种情况下虽然最坏情况仍然是O(n^2),但最坏情况不再依赖于输入数据,而是由于随机函数取值不佳。实际上,随机化快速排序得到理论最坏情况的可能性仅为1/(2^n)。所以随机化... 阅读全文
posted @ 2015-02-10 10:00 孙永杰 阅读(519) 评论(0) 推荐(0) 编辑
摘要:#include #include #ifdef __linux #include #endif // MINIMUM(A) // MIN = A[1] // for i = 2 to A.length // if min > A[i] // min = A[i] // return min int64_t minimum(int64_t* A, i... 阅读全文
posted @ 2015-02-09 20:27 孙永杰 阅读(286) 评论(0) 推荐(0) 编辑

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