题目感谢JLGG的指导!思路://把数据转换成一条折线,发现有凸有凹//有凹点,去掉并加上两边的最小值//无凹点,直接加上前(n-2)个的和(升序)//数据太大,要64位//判断凹与否,若一边等于,一边大于,那中间这个也算是凹进去的,所以判断时要加上等于//有凹点,去掉并加上两边的最小值//无凹点,...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 23:00:32   
                                阅读次数:
259
                             
                    
                        
                            
                            
                                问题:二叉树的最深深度class Solution{public: void dfs(TreeNode *root,int step,int &MAX) { if(root==NULL) { if(MAXleft,step+1); ...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 22:49:02   
                                阅读次数:
202
                             
                    
                        
                            
                            
                                平衡二叉树定义(AVL):它或者是一颗空树,或者具有以下性质的二叉树:它的左子树和右子树的深度之差的绝对值不超过1,且它的左子树和右子树都是一颗平衡二叉树。
平衡因子(bf):结点的左子树的深度减去右子树的深度,那么显然-1
很显然,平衡二叉树是在二叉排序树(BST)上引入的,就是为了解决二叉排序树的不平衡性导致时间复杂度大大下降,那么AVL就保持住了(BST)的最好时间复杂度O(lo...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 19:49:22   
                                阅读次数:
296
                             
                    
                        
                            
                            
                                题目描述:
输入一个二叉树,输出其镜像。
九度OJ的测试很蛋疼啊~
这里,我先写一个求二叉树镜像的代码,使用自己的测试代码:
思路很简单:先判断是否左右孩子都为空,如果不是,则交换,然后递归左右子树。其实是先序遍历。
/*
二叉树镜像
by Rowandjj
2014/8/1
*/
#include
using namespace std;
typedef str...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 19:47:22   
                                阅读次数:
266
                             
                    
                        
                            
                            
                                思路:
即二叉树的层序遍历。可以使用一个辅助队列,首先将二叉树的根节点入队,然后打印根结点的值,接着判断根结点
是否有左右孩子,如果有,将左右孩子入队。如此循环直到队列为空。
代码:
/*
从上到下遍历二叉树
by Rowandjj
2014/8/1
*/
#include
using namespace std;
typedef struct _BNODE_
{
	i...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 19:40:02   
                                阅读次数:
245
                             
                    
                        
                            
                            
                                cvCreateImage函数-- Cxcore数组操作创建头并分配数据IplImage* cvCreateImage( CvSize size, int depth, int channels ); size图像宽、高.depth图像元素的位深度,可以是下面的其中之一:IPL_DEPTH_8U -...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 18:54:52   
                                阅读次数:
453
                             
                    
                        
                            
                            
                                二叉树主要有三种遍历方式:前序遍历、中序遍历和后序遍历,每种方式都有递归和非递归两种方法。递归的方法简单明了,但是会比较耗时,非递归的方法效率相对较高,但是算法也比较晦涩。本文就这三种遍历方式做简单的介绍。...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 13:47:41   
                                阅读次数:
223
                             
                    
                        
                            
                            
                                题目大意:给你一个网络组,每台机子与其他机子的关系,让你找到所有的割点,如果没有割点,输出无这道题目就是最直接的求割点问题,我在这里用的是邻接矩阵来存储机子之间的关系割点问题的求解需要对深度优先搜索序数有比较好的理解dfn[]用于存储当前的优先搜索序数,low[]存储当前点通过子节点或是回路所能达到...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 13:26:51   
                                阅读次数:
220
                             
                    
                        
                            
                            
                                题意如上,含有重边(重边的话,俩个点就可以构成了边双连通)。
先缩点成树,在求数的直径,最远的连起来,剩下边(桥)的自然最少。这里学习了树的直径求法:第一次选任意起点U,进行bfs,到达最远的一个点v(level最深)该点必然是树的直径的一个端点,,再从该点出发,bfs,到最深的一点,该点深度就是直径。(证明:先假设u,是直径上一点,S,T是直径的端点,设v!=t,则有(V,U)+(U,S)>(...
                            
                            
                                分类:
其他好文   时间:
2014-08-01 00:00:00   
                                阅读次数:
371
                             
                    
                        
                            
                            
                                /* 
 *@Category  数组冒泡排序类
 *@param array_arsort 类中操作方法
 *@author yalong sun
 */
//从大到小排序
class array_maopao{
    public function array_arsort($array){
        $ary = '';
        for($j...
                            
                            
                                分类:
其他好文   时间:
2014-07-31 13:34:56   
                                阅读次数:
176