首页 > 资料专栏 > HRM > 人力资源 > 面试甄选 > 招聘试题_腾讯校招C语言笔试题_附答案DOC

招聘试题_腾讯校招C语言笔试题_附答案DOC

yiguanl***
V 实名认证
内容提供者
资料大小:16KB(压缩后)
文档格式:DOC
资料语言:中文版/英文版/日文版
解压密码:m448
更新时间:2022/4/16(发布于广东)
阅读:4
类型:积分资料
积分:10分 (VIP无积分限制)
推荐:升级会员

   点此下载 ==>> 点击下载文档


文本描述
1.???????? 输入一个链表的头结点,从尾到头反过来输出每个结点的值。链表结点定义如下:struct ListNode{????? int?????? m_nKey;????? ListNode* m_pNext;};A:??? 递归方法逆序输出,栈方法逆序输出。(任意实现一种既可)void PrintListUsingRecursicve(pListNode head){??? if(head!=NULL)??? {????? PrintListUsingRecursicve(head->m_pNext);????? printf("%d/n",head->m_nKey);??? }}void PrintListUsingStack(pListNode head){??? Stack s;??? s=0;??? pListNode p=head;?? do{?????? push(&s,p->m_nKey);?????? p=p->m_pNext;?? }while(p!=NULL);?? while(!IsEmpty(&s))?? {?????? printf("%d/n",pop(&s));?? }}2.???????? 二元树的深度题目:输入一棵二元树的根结点,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。#include<stdio.h>#include<stdlib.h>#include<string.h>#include<time.h>#define MAXLEN 100#define MAXNUM 10typedef int Tree[MAXLEN];Tree bt;int GetDeep(int i){??? int l=0,r=0;??? if(bt[i*2]!=-1)??? {????? l=GetDeep(i*2)+1;??? }??? if(bt[i*2+1]!=-1)??? {??????? r= GetDeep(i*2+1)+1;??? }??? return l>r?l:r;}int main(){??? int i=0;??? memset(bt,-1,sizeof(bt));??? for(i=1;i<=MAXNUM;i++)????? bt[i]=i;?? bt[(i-1)*2]=i*2;?? printf("%d /n",GetDeep(1));?? return 0;}?3.???????? 整数的二进制表示中1的个数题目:输入一个整数,求该整数的二进制表达中有多少个1。例如输入10,由于其二进制表示为1010,有两个