![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 85
空中乘客
Do The Right Thing.
个人主页:deepspark.cn
展开
-
胜者树与败者树
转载自:http://blog.163.com/yangjun1988422@126/blog/static/474129172011711103313483/胜者树和败者树都是完全二叉树,是树形选择排序的一种变型。每个叶子结点相当于一个选手,每个中间结点相当于一场比赛,每一层相当于一轮比赛。 不同的是,胜者树的中间结点记录的是胜者的标号;而败者树的中间结点记录转载 2012-10-14 23:29:12 · 671 阅读 · 0 评论 -
用异或实现两个数的交换&x&(x-1)表达式作用&计算前1500个丑数
用异或实现两个数的交换问题void swap(int &a,int &b){a^=b;b^=a;a^=b;}转换过程:a------------------------->b a^=b a=a^b a^b---------------------->b原创 2013-07-06 15:10:17 · 1352 阅读 · 0 评论 -
k-d tree算法
觉得此文介绍KD树写的很简单易懂,遂转载收藏:http://www.cnblogs.com/eyeszjwang/articles/2429382.htmlk-d树(k-dimensional树的简称),是一种分割k维数据空间的数据结构。主要应用于多维空间关键数据的搜索(如:范围搜索和最近邻搜索)。应用背景 SIFT算法中做特征点匹配的时候就会利用到k-d树。而特征点匹配实际上就是一转载 2012-12-29 15:57:59 · 839 阅读 · 0 评论 -
动态规划求解硬币找零问题——Java实现
动态规划的基本思想是将待求解问题分解成若干个子问题,先求解子问题,并将这些子问题的解保存起来,如果以后在求解较大子问题的时候需要用到这些子问题的解,就可以直接取出这些已经计算过的解而免去重复运算。保存子问题的解可以使用填表方式,例如保存在数组中。 动态规划的主要难点在于理论上的设计,也就是上面4个步骤的确定,一旦设计完成,实现部分就会非常简单。使用动态规划求解问题,最重要的就是确定动态规划三要转载 2012-10-31 00:51:54 · 5895 阅读 · 3 评论