算法&编程题
donglynn
这个作者很懒,什么都没留下…
展开
-
二叉树的深度优先遍历与广度优先遍历 [ C++ 实现 ]
深度优先搜索算法(Depth First Search),是搜索算法的一种。是沿着树的深度遍历树的节点,尽可能深的搜索树的分支。 当节点v的所有边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。 如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。 如右图所转载 2014-11-27 11:37:12 · 728 阅读 · 0 评论 -
计算hashCode的常见方法
1. 把某个非零常数值,比如说17,保存在一个叫result的int类型的变量中。 2.对于对象中每一个关键域f(值equals方法中考虑的每一个域),完成以下步骤: a.为该域计算int类型的散列吗c: i. 如果该域是boolean类型,则计算 [java] view plaincopy f?0:1 ii. 如果该域是b转载 2015-04-29 17:17:27 · 567 阅读 · 0 评论 -
八大排序,各显神通--动图版
原文:http://blog.csdn.net/u010850027/article/details/49362279 排序是数据处理中一种很重要也很常用的运算,一般情况下,排序操作在数据处理过程中要花费许多时间,为了提高计算机的运行效率,我们提出并不断改进各种各样的排序算法,这些算法也从不同角度展示了算法设计的重要原则和技巧。在小编的世界中,排序就是对一组杂乱无章的数据进行转载 2015-11-10 12:36:21 · 17142 阅读 · 9 评论 -
纸上谈兵: 树, 二叉树, 二叉搜索树
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 树的特征和定义 树(Tree)是元素的集合。我们先以比较直观的方式介绍树。下面的数据结构是一个树: 树有多个节点(node),用以储存元素。某些节点之间存在一定的关系,用连线表示,连线称为边(edge)。边的上端节点称为父节点,下端称为子节点。树转载 2015-11-03 16:17:31 · 338 阅读 · 0 评论 -
位图索引:原理(BitMap index)
http://www.cnblogs.com/LBSer/p/3322630.html 位图(BitMap)索引 前段时间听同事分享,偶尔讲起Oracle数据库的位图索引,顿时大感兴趣。说来惭愧,在这之前对位图索引一无所知,因此趁此机会写篇博文介绍下位图索引。 1. 案例 有张表名为table的表,由三列组成,分别是姓名、性别和婚姻状况,其中性别只有男和女两项,婚姻转载 2015-11-03 16:49:31 · 2378 阅读 · 0 评论 -
两个有序数组,去重并按顺序显示
直接上代码。这里最后一次比较会有数组越界,幸运的是php并不会报错。<?php $arr1 = [1,3,4,6,9,11,12,18,20]; $arr2 = [2,3,4,5,8,12,13,14,19,20];$length = count($arr1) + count($arr2); $arr = []; $i=0;$j=0; while( --$length > 0) {原创 2017-03-28 11:42:43 · 853 阅读 · 0 评论 -
快速排序的php实现
快速排序的基本原理: 1. 任取数组中一个的元素作为比较基数,一般取第一个。 2. 历遍数组,把所有小于基数的元素放在左侧,把所有大于基数的元素放在右边。这时候,基数正好处在了正确的位置(左边的都它小,右边的都比它大)。 3. 为了保证后续的操作2中的基数位置不变动,接下来分别对数组左侧部分和右侧部分进行上述排序即可。 4. 往复递归上述三个步骤。代码如下:<?php functio原创 2017-03-29 14:42:36 · 332 阅读 · 0 评论