青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

SEMAN

曾經(jīng)滄海難為水、除卻巫山不是云

C++博客 首頁 新隨筆 聯(lián)系 聚合 管理
  9 Posts :: 3 Stories :: 24 Comments :: 0 Trackbacks

    今天參加MS2006年度秋季校園招聘會的筆試第三場,有一個算法題,求一個樹種兩個節(jié)點的最低公共節(jié)點,在網(wǎng)上Google了一下,看到原題大致這樣的:
      Given the values of two nodes in a *binary search tree*, write a c program to find the lowest common ancestor. You may assume that both values already exist in the tree.

The function prototype is as follows: int FindLowestCommonAncestor(node* root,int value1,int value)
           20
          /  \
         8    22
       /   \
      4     12
           /  \
         10    14
    構(gòu)筑函數(shù): struct TreeNode * FindLowestCommonTreeNode(struct node *pNode,)

Struct TreeNode
{
   int Data;
   TreeNode *pLeft, *pRight;
}

FindLowestAncestor(Struct TreeNode *pRoot, Struct TreeNode *pNode1, Struct TreeNode *pNode2)
{
   if (pRoot==NULL) 
      return NULL;
   if (pRoot==pNode1 && pRoot==pNode2) 
      return pRoot;
   Struct TreeNode *pTemp;
   if (pTemp = FindLowestAncestor(pRoot->pLeft,pNode1,pNode2)) 
      return pTemp;
   if (pTemp = FindLowestAncestor(pRoot->pRight,pNode1,pNode2)) 
      return pTemp;
   if (FindLowestAncestor(pRoot,pNode1,pNode1) && FindLowestAncestor(pRoot,pNo
de2,pNode2)) return pRoot;

   return NULL;
}

posted on 2005-11-14 02:05 味全每日C++ 閱讀(1378) 評論(5)  編輯 收藏 引用

Feedback

# re: MS的筆試題目 2006-10-22 17:18 小小
更多試題,請訪問: www.pghome.net/art.html  回復  更多評論
  

# re: MS的筆試題目 2006-12-28 23:23 kgha
FindLowestAncestor(Struct TreeNode *pRoot, Struct TreeNode *pNode1, Struct TreeNode *pNode2)
{
if (pRoot==NULL)
return NULL;
if (pRoot==pNode1 && pRoot==pNode2)
return pRoot;
Struct TreeNode *pTemp;
if (pTemp = FindLowestAncestor(pRoot->pLeft,pNode1,pNode2))
return pTemp;
if (pTemp = FindLowestAncestor(pRoot->pRight,pNode1,pNode2))
return pTemp;
if (FindLowestAncestor(pRoot,pNode1,pNode1) && FindLowestAncestor(pRoot,pNo
de2,pNode2)) return pRoot;

return NULL;
}

  回復  更多評論
  

# re: MS的筆試題目 2006-12-28 23:37 kgha

這樣太費解了,不如寫兩個函數(shù)直觀:
FindLowestAncestor(Struct TreeNode *pRoot, Struct TreeNode *pNode1, Struct TreeNode *pNode2)
{
if (pRoot==NULL)
return NULL;
if (pRoot==pNode1 && pRoot==pNode2)
return pRoot;
Struct TreeNode *pTemp;
if (pTemp = FindLowestAncestor(pRoot->pLeft,pNode1,pNode2))
return pTemp;
if (pTemp = FindLowestAncestor(pRoot->pRight,pNode1,pNode2))
return pTemp;
if (FindNode(pRoot,pNode1) && FindLowestAncestor(pRoot,pNo
de2)) return pRoot;
return NULL;
}
struct TreeNode * FindNode(Struct TreeNode *pRoot, Struct TreeNode *pNode)
{
if(pNode在pRoot下)
{
return pRoot;
}
return NULL;
}
因為最后一步僅僅是在pRoot下是否存在pNode1和pNode2,所以還有優(yōu)化的余地  回復  更多評論
  

# re: MS的筆試題目 2006-12-28 23:41 kgha
這樣太費解了,不如寫兩個函數(shù)直觀:
FindLowestAncestor(Struct TreeNode *pRoot, Struct TreeNode *pNode1, Struct TreeNode *pNode2)
{
if (pRoot==NULL)
return NULL;
if (pRoot==pNode1 && pRoot==pNode2)
return pRoot;
Struct TreeNode *pTemp;
if (pTemp = FindLowestAncestor(pRoot->pLeft,pNode1,pNode2))
return pTemp;
if (pTemp = FindLowestAncestor(pRoot->pRight,pNode1,pNode2))
return pTemp;
if (FindNode(pRoot,pNode1) && FindNode(pRoot,pNo
de2)) return pRoot;
return NULL;
}
struct TreeNode * FindNode(Struct TreeNode *pRoot, Struct TreeNode *pNode)
{
if(pNode在pRoot下)
{
return pRoot;
}
return NULL;
}
因為最后一步僅僅是在pRoot下是否存在pNode1和pNode2,所以還有優(yōu)化的余地
上面的有點小錯誤,呵呵  回復  更多評論
  

# re: MS的筆試題目 2008-03-07 17:31 521zheng
其實沒有這么麻煩的,
考慮一下二叉查找樹的特點,如果兩個節(jié)點的值都大于或都小于某一個節(jié)點的值,就繼續(xù)遍歷下去,否則返回節(jié)點的值
int FindLowesCommonNode(root * node , int a, int b)
{
if(a<=node.value && b<=node.value)
return FindLowesCommonNode(node->left, a,b);
if(a>=node.value && b>=node.value)
return FindLowesCommonNode(node->right, a,b);
return root.value;
}  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一级黄色网| 国产一区二区在线免费观看| 亚洲激情在线观看| 欧美一区二区成人6969| 一本大道久久a久久精品综合 | 一区二区日韩| 1204国产成人精品视频| 欧美激情亚洲综合一区| 久久久.com| 欧美一区观看| 亚洲国产欧美一区二区三区久久 | 欧美顶级艳妇交换群宴| 免费观看亚洲视频大全| 久久综合狠狠综合久久综合88 | 久久精品视频99| 中日韩在线视频| 一本综合久久| 美乳少妇欧美精品| 免费久久99精品国产自在现线| 老司机aⅴ在线精品导航| 老妇喷水一区二区三区| 欧美精品v日韩精品v国产精品| 国产精品久久国产精品99gif| 亚洲黄色尤物视频| 欧美日本在线视频| 欧美成人精品福利| 蜜桃av一区二区在线观看| 欧美成人首页| 亚洲国产日韩一级| 久久精品亚洲国产奇米99| 亚洲免费一在线| 在线视频免费在线观看一区二区| 欧美一区二区三区在线看| 亚洲在线电影| 午夜精品区一区二区三| 欧美与欧洲交xxxx免费观看| 欧美在线短视频| 免费观看一区| 欧美一区二区在线看| 国产一区二区主播在线| 欧美性大战久久久久久久| 亚洲日产国产精品| 夜夜嗨av一区二区三区| 久久综合久久综合九色| 欧美国产高清| 亚洲女爱视频在线| 亚洲第一二三四五区| 欧美精品一区二区蜜臀亚洲| 欧美日本亚洲视频| 欧美日韩国产精品一卡| 免费在线一区二区| 久久精品91| 免费美女久久99| 欧美精品videossex性护士| 99re6热只有精品免费观看 | 亚洲综合色婷婷| 欧美在线视频观看| 欧美日韩免费在线观看| 国产精品视频精品| 亚洲三级影院| 欧美日本在线| 欧美日韩一区二区三区高清| 亚洲一区免费网站| 久久国产精品亚洲77777| 另类春色校园亚洲| 久久综合伊人| 欧美日韩国产一区二区三区| 国产精品永久免费视频| 国产精品入口日韩视频大尺度| 国产精品视频不卡| 亚洲日本激情| 久久久久久久久久久久久久一区 | 亚洲欧美久久| 亚洲盗摄视频| 亚洲综合电影| 在线看国产一区| 欧美日韩综合在线| 日韩视频免费| 欧美激情一区二区三区全黄| 亚洲网址在线| 国产精品狠色婷| 欧美大片一区二区| 国产麻豆成人精品| 亚洲国内精品| 狠狠色综合播放一区二区| 久久一区二区三区超碰国产精品| 欧美日韩免费在线观看| 免费影视亚洲| 国内精品久久久久久久97牛牛| 亚洲私人影院在线观看| 国产精品二区在线观看| 国产日韩欧美视频在线| 亚洲毛片一区| 亚洲精选视频免费看| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲精品专区| 一区二区动漫| 亚洲高清久久| 一区二区在线视频播放| 极品少妇一区二区三区精品视频| 欧美一区二区三区男人的天堂 | 欧美日韩情趣电影| 99精品久久| 99国产精品久久久| 亚洲国产成人91精品| 亚洲最黄网站| 欧美激情成人在线视频| 欧美三级电影一区| 久久免费国产精品1| 欧美精品一区二区三区高清aⅴ| 香蕉成人啪国产精品视频综合网| 久久嫩草精品久久久精品| 亚洲在线观看视频| 欧美不卡一卡二卡免费版| 久久大综合网| 欧美视频手机在线| 亚洲高清一区二区三区| 国产日韩欧美综合| 一区二区三区视频在线播放| 最新中文字幕亚洲| 欧美中文在线观看| 亚洲欧美亚洲| 国产精品qvod| 99re成人精品视频| 日韩视频三区| 欧美成人网在线| 奶水喷射视频一区| 国产真实乱偷精品视频免| 中日韩高清电影网| 亚洲美女在线视频| 欧美大胆成人| 亚洲国产精品视频| 亚洲人成毛片在线播放女女| 久久亚洲精品一区| 欧美成人tv| 伊人蜜桃色噜噜激情综合| 久久久久久国产精品mv| 久久久亚洲欧洲日产国码αv| 国产免费成人在线视频| 亚洲宅男天堂在线观看无病毒| 洋洋av久久久久久久一区| 亚洲欧洲三级| 午夜精品福利视频| 国产午夜精品一区二区三区视频| 亚洲人成高清| 9l视频自拍蝌蚪9l视频成人| 欧美理论电影在线观看| 亚洲精品中文字幕在线| 亚洲一区高清| 国产伦精品一区二区三| 性娇小13――14欧美| 久久精品一区| 黄色精品免费| 欧美成人免费大片| 日韩一级片网址| 亚洲欧美变态国产另类| 国产一区二区福利| 老巨人导航500精品| 91久久精品一区二区三区| 亚洲一区精品电影| 国产日韩欧美一区二区三区在线观看| 久久爱www.| 亚洲欧洲日本专区| 亚洲嫩草精品久久| 激情综合电影网| 久久伊人免费视频| 亚洲激情黄色| 欧美一区二区视频在线| 亚洲高清在线精品| 国产精品不卡在线| 蜜臀a∨国产成人精品| 中文久久精品| 欧美国产精品劲爆| 午夜精品久久久久久久99热浪潮| 国语自产精品视频在线看一大j8 | 亚洲综合三区| 欧美jizz19性欧美| 亚洲女爱视频在线| 亚洲国产精品第一区二区| 欧美日韩一区二区三区免费| 欧美影院在线| 一本色道久久综合亚洲精品不| 久久久蜜桃精品 | 欧美激情一区二区三区 | 一二美女精品欧洲| 免费国产自线拍一欧美视频| 中文在线一区| 亚洲精品久久嫩草网站秘色| 国产欧美日韩综合| 欧美日韩亚洲一区二区三区在线| 久久久久久久久久久久久久一区 | 91久久午夜| 久久综合综合久久综合| 午夜精品三级视频福利| 一区二区三区精品国产| 亚洲欧洲一区二区三区在线观看| 国产亚洲福利一区| 国产精品色婷婷久久58| 欧美午夜一区二区| 欧美久久影院|