ldjhust

工欲善其事 必先利其器

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年4月1日

摘要: 知道二叉树的前序和中序序列重建这颗二叉树,从最简单的开始,我们假设这两个序列的确是一颗二叉树的前序和中序序列并且这可二叉树中没有重复的节点: 1 #include <stdio.h> 2 #include <malloc.h> 3 4 struct NODE 5 { 6 int data; 7 8 struct NODE *lChild; 9 struct NODE *rChild; 10 }; 11 12 // 重建二叉树,要求此二叉树中不能有重复的节点 13 void RebuildBinaryTree(int *PreOrder, i... 阅读全文
posted @ 2013-04-01 21:19 ldjhust 阅读(207) 评论(0) 推荐(0) 编辑

摘要: 二叉树的节点结构为:1 struct NODE2 {3 char ch;4 5 struct NODE *lChild;6 struct NODE *rChild;7 }; 按照前序的顺序递归建立一颗二叉树: 1 void PreOrderCreatBinary(struct NODE **root) 2 { 3 // 函数入口检验 4 if (NULL == root) 5 { 6 printf ("Invalid Parameter(s)!\n"); 7 return; 8 } 9 10 ... 阅读全文
posted @ 2013-04-01 19:42 ldjhust 阅读(330) 评论(0) 推荐(0) 编辑

摘要: 定义两个变量nSum、nMaxSum,其中nSum用来存储当前和,nMaxSum用来存储最大和,若nSum <= 0,则需从下一个数开始重新记录当前和,每计算一次当前和,需与nMaxSum比较,若nSum > nMaxSum则需更新nMaxSum,反之不需更新。基于上述分析,写出代码如下: 1 int SubArrayMaxSum(int *arr, int N) 2 { 3 assert (arr != NULL); 4 5 assert (N > 0); 6 7 int nSum = 0; 8 9 // 将int型的最小值INT_MIN赋给nMaxSu... 阅读全文
posted @ 2013-04-01 15:22 ldjhust 阅读(176) 评论(0) 推荐(0) 编辑