摘要: 堆排序 Heap Sort 堆排序是一种选择排序,其时间复杂度为O(nlogn)。 堆的定义 n个元素的序列{k1,k2,…,kn}当且仅当满足下列关系之一时,称之为堆。 情形1:ki <= k2i 且ki <= k2i+1 (最小化堆或小顶堆) 情形2:ki >= k2i 且ki >= k2i+1 阅读全文
posted @ 2016-08-29 13:38 maxandhchen 阅读(9880) 评论(0) 推荐(0) 编辑
摘要: bool hasSubTree(Bnode*parent,Bnode*son) { if(!son) return tree; if(!parent) return false; bool resul=false; //都相等 退出 if(patent->val=son->val&&left) el 阅读全文
posted @ 2016-08-28 17:38 maxandhchen 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 连续子数组的最大和: int findGreatSum(int*data,int len) { if(!data||len<0) return; int sum=0; int maxsum=0; int start=0; int end=0; for(int i=0;i<len;i++) { if( 阅读全文
posted @ 2016-08-28 13:30 maxandhchen 阅读(145) 评论(0) 推荐(0) 编辑
摘要: struct BtreeNode { int val; BtreeNode*pleft; BtreeNode*pright; } void findpath(BtreeNode*root,int target) { if(!root) { return; } vector<int>path; int 阅读全文
posted @ 2016-08-26 17:19 maxandhchen 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 1.层次遍历二叉树: 从上往下的层次遍历: struct TreeNode { int val; TreeNode*pleft; TreeNode*pright; } void PrintNodeatLevel(TreeNode *root,int level) { if(!root) { retu 阅读全文
posted @ 2016-08-26 16:51 maxandhchen 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 采用动态规划的思想解决。 int max(vector<int>s,int len) { int sum_max=0; int max=0; for(int i=0;i<len;i++) { if(i==0||sum_max<=0) { sum_max=s[i]; } else if(sum_max 阅读全文
posted @ 2016-08-26 15:07 maxandhchen 阅读(139) 评论(0) 推荐(0) 编辑
摘要: .erase()只是删除了元素内容,并不能改变容量大小; 举例: 35 void testvector()36 {38 vector v;39 v.push_back(1);40 v.push_back(2);41 cout << "v size = " << v.size() << " v cap 阅读全文
posted @ 2016-08-25 15:13 maxandhchen 阅读(2576) 评论(0) 推荐(0) 编辑
摘要: C++中的内联函数主要是减少函数调用时的跳转。内联函数在编译时,会将此内联函数代码直接编译到调用函数之处。减少了一次函数调用时的跳转啊、数据压栈等操作。所以相比调用行数,内联函数的执行效率要相对高点。不过也正因为如此,所以最终生成的程序文件要稍微大点。所以,一般内联函数只用于只有一两句语句的、调用频 阅读全文
posted @ 2016-08-17 16:00 maxandhchen 阅读(485) 评论(0) 推荐(0) 编辑
摘要: //递归: 判断该树是否为平衡二叉树 方法一:调用上述函数求每个节点的左右孩子深度 [cpp] view plain copy print? bool IsBalanced(BinaryTreeNode* pRoot) { if(pRoot== NULL) return true; int nLef 阅读全文
posted @ 2016-08-17 11:01 maxandhchen 阅读(549) 评论(0) 推荐(0) 编辑
摘要: hashmap 线程不安全 允许有null的键和值 效率高一点、 方法不是Synchronize的要提供外同步 有containsvalue和containsKey方法 HashMap 是Java1.2 引进的Map interface 的一个实现 HashMap是Hashtable的轻量级实现 h 阅读全文
posted @ 2016-08-17 10:31 maxandhchen 阅读(167) 评论(0) 推荐(0) 编辑