EricYang

Tech Spot of Eric

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

2012年8月12日

摘要: zzhttp://blog.csdn.net/vividonly/article/details/6688327编程之美3.9:重建二叉树扩展问题1:如果前序和中序遍历的字母有重复的,那么怎么构造所有可能的解呢?扩展问题2:如何判断给定的前序遍历和中序遍历的结果是合理的?思路:问题1:搜索所有可能的情况,并调用扩展问题2的解决方案,判断此情况是否合理(剪枝操作),如果合法,则构造解问题2:递归判断左右子树是否合理,递归的返回条件是到达叶子节点。代码及测试情况如下: 1 /* 2 * 编程之美重建二叉树,扩展问题1,2 3 * 扩展问题1:如果前序和中序的字母可能是相同的,怎么重构出所... 阅读全文
posted @ 2012-08-12 21:35 Eric-Yang 阅读(372) 评论(0) 推荐(0) 编辑

摘要: zzhttp://www.cppblog.com/humanchao/archive/2008/04/17/47357.html有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。问题:1、如何判断一个链表是不是这类链表?2、如果链表为存在环,如何找到环的入口点?解答:一、判断链表是否存在环,办法为:设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。(当然,fast先行头到尾部为NULL,则为无环链表)程序如下 阅读全文
posted @ 2012-08-12 15:07 Eric-Yang 阅读(227) 评论(0) 推荐(0) 编辑

摘要: 1 #include <iostream> 2 #include <cstring> 3 #include <algorithm> 4 5 using namespace std; 6 7 int main() 8 { 9 char strA[10] = "abddd";10 char strB[10] = "aebdd";11 int lenA, lenB;12 lenA=strlen(strA);13 lenB=strlen(strB);14 15 //dp16 int dp[lenA+1][lenB+1];17 阅读全文
posted @ 2012-08-12 00:24 Eric-Yang 阅读(244) 评论(0) 推荐(0) 编辑