`

笔试面试编程题

 
阅读更多

1. 判断二叉树是否相同,左右孩子互换也认为相同,要求纸上写出全部代码

#include <iostream>

using namespace std;

typedef struct AA{
    AA *l, *r;
    int data;
    
}Node;
Node tree1[10];
Node tree2[10];
/*
bool bitree_cmp(Node *n1, Node *n2)
{
    int cnt1 = 0, cnt2=0;
    bool ans = false;
    if ( n1 == NULL && n2 == NULL )
        return true;
    if ( (n1 == NULL && n2 != NULL) || (n1 != NULL && n2 == NULL))
        return false;
    if ( n1->data != n2->data )
        return false;
    if ( n1->l )
        ++cnt1;
    if ( n2->r )
        ++cnt1;
    if ( n2->l )
        ++cnt2;
    if ( n2->r )
        ++cnt2;
    if ( cnt1 != cnt2 )
        return false;
    if ( cnt1 == 0 )
        return true;
    ans = bitree_cmp(n1->l, n2->l) && bitree_cmp(n1->r, n1->r);
    if ( ans )
        return true;
    ans = bitree_cmp(n1->l, n2->r) && bitree_cmp(n1->r, n2->l);
    return ans;
}
*/
bool bitree_cmp(Node *n1, Node *n2)
{
    if ( n1 == NULL && n2 == NULL )
        return true;
    if ( n1 != NULL && n2 != NULL )
    {
        if ( n1->data == n2->data )
        {
            return ( bitree_cmp(n1->l, n2->l)&&bitree_cmp(n1->r, n2->r) ) || ( bitree_cmp(n1->l, n2->r)&&bitree_cmp(n1->r, n2->l) );     
        }    
    }
    return false; 
} 


void read_data(Node *tree, int i)
{
    int data, l , r;
    scanf("%d%d%d",&data, &l, &r);
    tree[i].data = data;
    if ( l )
        tree[i].l = &tree[l];
    else
        tree[i].l = NULL;
    if ( r )
        tree[i].r = &tree[r];    
    else
        tree[i].r = NULL;     
}

int main()
{
    int n1, n2;
    int l, r, data;
    int i = 0;
    scanf("%d", &n1);
    while(n1--)
    {
       read_data(tree1, i); 
       ++i;
    }
    scanf("%d", &n2);
    i = 0;
    while(n2--)
    {
       read_data(tree2, i);
       ++i; 
    }   
    cout<<bitree_cmp(tree1, tree2)<<endl;
    cin>>i;
    
    
    return 0;
}

/*
测试数据: 
       1                      1
    2     2               2        2
  3  4   6   7          6  7     4   3  
从这开始: 
7
1 1 2
2 3 4
2 5 6
3 0 0
4 0 0
6 0 0
7 0 0

7
1 1 2
2 3 4
2 5 6
7 0 0
6 0 0
3 0 0
4 0 0

7
1 1 2
2 3 4
2 5 6
3 0 0
4 0 0
6 0 0
7 0 0

7
1 1 2
2 3 4
2 5 6
3 0 0
4 0 0
6 0 0
7 0 0



*/

 

 

 

 

 

 

分享到:
评论

相关推荐

    互联网校招题库资料笔试面试真题具体面试问题回答技巧腾讯阿里培训资料.zip

    C++笔试面试题带答案.docx c++笔试题汇总.pdf C++经典面试题库 附带参考答案.docx C++语言程序设计试题.docx CC++面试问题分类大汇总.docx C_C++笔试题大全.doc gamesloft C++面试题目.docx 常见C++笔试题目整理(含...

    c#笔试面试题 c#笔试面试题

    下面,我们将深入探讨一些可能出现在C#笔试面试中的关键知识点。 一、基础语法 1. 变量与数据类型:理解C#中的基本数据类型(如int、string、bool等)以及引用类型,了解变量声明和初始化的规则。 2. 控制流:包括...

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB.zip

    JAVA编程题全集(100题及答案).doc java面试书籍源码 Java面试文档题库 Java面试笔试题库.CHM Java面试问题集.pdf Java面试题以及答案(小生).pdf java面试题(题库全).doc JS 数据库答案.doc Land.the.Tech.Job.You....

    各知名公司面试笔试题

    而笔试题则可能包含编程题、逻辑推理题和数学问题,旨在测试候选人的创新思维和实际操作能力。 百度作为中国最大的搜索引擎公司,其面试笔试同样重视技术深度和广度。可能会考察你对搜索引擎原理的理解,比如网页...

    Java面试笔试题大汇总(最全+详细答案)

    Java作为一门广泛使用的编程语言,其面试笔试题涵盖了众多领域,包括基础语法、面向对象、集合框架、多线程、异常处理、IO流、网络编程、数据库操作、设计模式、JVM优化等。以下是对这些知识点的详细阐述: 1. **...

    信息科技笔试面试题.rar

    《信息科技笔试面试题》这份压缩包集合了多种IT行业的面试和笔试题目,特别是针对银行领域的面试问题。这些资源对于准备进入IT行业,尤其是银行IT部门的求职者来说,是极有价值的参考资料。以下是对其中涉及知识点的...

    java笔试编程题(小合集)

    这份"java笔试编程题(小合集)"包含了几套精选的Java编程题目,旨在帮助准备Java笔试或面试的朋友进行有针对性的练习。 第一份文档《最新JAVA编程题全集(50题及答案).doc》提供了五十道Java编程题目,并附带了答案,...

    最新各互联网BAT等笔试面试真题复习资料

    "最新各互联网BAT等笔试面试真题复习资料"这一标题明确指出了这份资源的内容核心,即互联网行业内知名企业,特别是BAT(百度、阿里巴巴、腾讯)的笔试和面试真题集,用于考生的复习准备。这些资料通常包含了各种技术...

    公司出的JAVA面试编程题

    公司出的JAVA面试编程题,具有极高的参考实用性,对即将要参加面试的帮助很大

    笔试 面试 智力题 求职

    在求职过程中,笔试和面试是两个至关重要的环节,智力题的出现则往往能评估候选人的逻辑思维、问题解决和创新能力。这些题目不仅测试了应聘者的专业知识,还考察了他们在压力下的反应速度和应对复杂问题的能力。下面...

    100个大学毕业生求职笔试面试真题大全

    《100个大学毕业生求职笔试面试真题大全》是一个为即将步入职场的大学生们精心准备的资源集合,旨在帮助他们在求职过程中顺利通过笔试和面试的挑战。这份压缩包文件包含了一个173页的“下载地址目录单”文档以及一个...

    笔试面试iq题

    里面有很多IQ题,超考智力,也许面试笔试时候可以用上。其中也有不少微软,谷歌的,超经典。美中不足的是答案要自己找。嘻嘻

    各大软件公司C#笔试面试题

    以上内容覆盖了C#笔试面试中的核心知识点,通过系统学习和练习,可以有效提升你在各大软件公司的面试竞争力。同时,文档"net面试题大全(有答案).doc"和"面试宝典.pdf"以及"各个公司面试题"提供了丰富的实战题目,...

    C语言面试笔试题,经典题目

    文档包含C语言,简答(包含一些面试高概率问题)、程序分析题(包含编程中常见错误现象,内存越界,非法操作,段错误分析等)、编程题(30道编程题,涵盖了面试常见题型,以及C语言经典程序)。学习,检测,准备面试,都是...

    java面试题,J2EE面试题 笔试题

    最全的j2EE面试题,题量大、经典,是我面试的...9、java面试题编程篇 10、Oracle面试题 11、Oracle企业面试题集锦 12、Spring面试题 13、SSH面试题 14、Strut+Spring+Hibernate面试题 15、张孝祥整理Java就业面试题大全

    java笔试面试题 (汇总)

    Java笔试面试题是Java开发者在求职过程中必须面对的重要环节,涵盖了基础语法、数据结构、算法、JVM、多线程、网络、设计模式等多个方面。以下是对这些知识点的详细解析: 1. **Java基础语法**:这是Java学习的起点...

    应聘笔试有很多题(推理题,编程题等)

    编程经典笔试面试题集合中,可能会有递归、字符串处理、内存管理等常见编程问题。 3. **电子类公司笔试题**:针对电子工程师的岗位,这类题目会侧重于电路分析、模拟电子、数字电子等方面。比如8位嵌入式程序员应...

    常见linux 嵌入式开发C语言笔试面试题

    "常见Linux嵌入式开发C语言笔试面试题" 本文总结了Linux嵌入式开发C语言笔试面试题中的重要知识点,包括进程和线程的基本概念、多进程和多线程的优缺点、进程和线程的状态转换、父进程和子进程的关系、进程通信的...

    IT常见笔试面试题

    这份名为“IT常见笔试面试题”的资料,无疑是为毕业生和求职者提供了一个宝贵的准备工具。以下是对这些常见题型的详细解读,希望能帮助你更好地理解和应对IT行业的面试挑战。 一、编程能力 在IT面试中,编程能力是...

    JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料.zip

    JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料: 2014年最新Java笔试题及答案.docx 225道Java面试题 学会了Java面试随你问.docx Ant和Maven的作用是什么?两者之间功能、特点有哪些区别?.docx ...

Global site tag (gtag.js) - Google Analytics