首页 > 考试题库
题目内容 (请给出正确答案)
[主观题]

案例二:面试题:树中两个结点的最低公共祖先

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“案例二:面试题:树中两个结点的最低公共祖先”相关的问题
第1题
面试题:二叉树的深度题目一:输入一棵二叉权的根结点,求该树的深度。从根结点到叶结点依次经过的结

面试题:二叉树的深度

题目一:输入一棵二叉权的根结点,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成的一条路径的长度为树的深度。

二叉树的结点定义如下:

struct BinaryTreeNode

{

int m_nValue ;

BinaryTreeNode* m_pLeft;

BinarvTreeNode* m_pRight ;

}

题目二:输入一棵二叉树的根结点,判断该树是不是平衡二叉树。如果某二叉树中任意结点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。例如图6.1中的二叉树就是一棵平衡二叉树。

点击查看答案
第2题
面试题:两个链表的第一个公共结点题目:输入两个链表,找出它们的第一个公共结点。链表结点定义如下

面试题:两个链表的第一个公共结点

题目:输入两个链表,找出它们的第一个公共结点。链表结点定义如下:

struct ListNode

{

int m_nKey;

ListNode* m_pNext;

};

点击查看答案
第3题
面试题:二叉树中和为某一值的路径题目:输入一棵二叉树和一个整数,打印出二叉数中结点值的和为输

面试题:二叉树中和为某一值的路径

题目:输入一棵二叉树和一个整数,打印出二叉数中结点值的和为输入整数的所有路径。从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。二叉树结点的定义如下:

S truct BinaryTreeNode

{

int m_nValue;

BinaryTreeNode*m_pLeft;

BinaryTreeNode*m_pRight ;

};

点击查看答案
第4题
面试题:树的子结构题目:输入两棵二叉树A和B,判断B是不是A的子结构。二叉树结点的定义如下:StructB

面试题:树的子结构

题目:输入两棵二叉树A和B,判断B是不是A的子结构。二叉树结点的定义如下:

StructBinaryTreeNode

{

int m nValue;

BinaryTreeNode* m_pLeft;

BinaryT reeNode* m_pRight ;

};

点击查看答案
第5题
面试题:合并两个排序的链表题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然

面试题:合并两个排序的链表

题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。例如输入图3.7中的链表1和链表2,则合并之后的升序链表3所示。链表结点定义如下:

struct list Node

{

int m _n Value;

listNode* m_pNext;

};

点击查看答案
第6题
面试题:用两个栈实现队列题目:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTa

面试题:用两个栈实现队列

题目:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTaik和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。

template <typename T>class CQueue

{

public:

coueue (void);

~CQueue (void)j

void appendTail (constT&node);

T deleteHead();

private:

stack<T> stack1;

stack<T> stack2;

};

点击查看答案
第7题
面试题:二叉搜索树的后序遍历序列题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍

面试题:二叉搜索树的后序遍历序列

题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是刚返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。

点击查看答案
第8题
面试题:和为s的两个数字VS和为s的连续正数序列题目一:输入一个递增排序的数组和一个数字s,在数组

面试题:和为s的两个数字VS和为s的连续正数序列

题目一:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,输出任意一对即可。

题目二:输入一下正数s,打印出所有和为s的连续正数序列(至少含有两个数)。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以结果打印出3个连续序列1~5、4~6和7~8。

点击查看答案
第9题
面试题:复杂链表的复制题目:请实现函数ComplexListNode*Clone(ComplexListNode*pHead),复制一个

面试题:复杂链表的复制

题目:请实现函数ComplexListNode*Clone(ComplexListNode*pHead),复制一个复杂链表中,每个结点除了有一个m_pSibing指向链表中的任意结点或者NULL。结点的C++定义如下:

struct ComplexListNode

{

Int m_nValue;

ComplexListNode* m_pNext;

ComplexListNode* m_pSibling;

};

点击查看答案
第10题
面试题:链表中倒数第k个结点题目:输入一个链表,输出该链表中倒数第k个结点。为了符合大多数人的习

面试题:链表中倒数第k个结点

题目:输入一个链表,输出该链表中倒数第k个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,从头结点开始它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个结点是值为4的结点。

链表结点定义如下:

struct List Node

{

int m n Value;

ListNode* m_p Next;

};

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改