百度2021校招C /PHP研发工程师笔试卷(第二批)

本文提供了百度2021年校招C/PHP研发工程师笔试的部分试题,涵盖数据库查询、二叉树、算法复杂度、回文数判断、哈夫曼编码、C++ STL容器、PHP脚本执行结果、代码耦合度、二叉查找树、IP子网划分等多个方面,旨在考察候选人的综合技术能力。
摘要由CSDN通过智能技术生成

单选题

数据库中的表是数据库最重要的组成部分之一,现假设有关系S(Sno,SNAME,SAGE),C(Cno,CNAME),SC(Sno,Cno,GRADE),其中Sno是学生号,SNAME是学生姓名,SAGE 是学生年龄, Cno是课程号,CNAME是课程名称。要查询选修“ACCESS”课的年龄不小于20的全体学生姓名的SQL语句是 SELECT SNAME FROM S,C,SC WHERE子句,则WHERE子句的内容是( A )?
A
S.Sno = SC.sno and C.Cno = SC.Cno and SAGE>=20 and CNAME=‘ACCESS’
B
S.Sno = SC.sno and C.Cno = SC.Cno and SAGE in>=20 and CNAME in ‘ACCESS’
C
SAGE in>=20 and CNAME in ‘ACCESS’
D
SAGE>=20 and CNAME=’ ACCESS’
2.
已知一棵二叉树的树形如下图所示,其后序序列为 e,a,c,b,d,g,f,树中与结点 a 同层的结点是(B)
在这里插入图片描述

A、c
B、d
C、f
D、g
3.
下面java代码求一个比较大的正整数是不是回文数,比如212是回文数,返回true,-212不是回文数,返回false,正整数的长度为N,那么如下代码的时间复杂度以及空间复杂度是多少?(A)

public boolean isPalindrome(long x) {
   
    if (x < 0 || (x % 10 == 0 && x != 0)) {
   
        return false;
    }
 
    long tempNum = 0;
    while (x > tempNum) {
   
        tempNum = tempNum * 10 + x % 10;
        x /= 10;
    }
     
    return x == tempNum || x == tempNum / 10;
}

A、O(logN),O(1)
B、O(logN),O(logN)
C、O(N),O(1)
D、O(N),O(logN)
4.
下列选项中,不可能将当前进程唤醒的事件是?(D)
A、I/O结束
B、某进程退出临界区
C、某进程释放锁
D、当前进程的时间片用完
5.
一个算法的时间复杂度由以下递归方程表示(N是非常大的整数,且是2的幂):
(1).T(1)=1
(2).T(N)=2T(N/2)+N
请问T(N)的表达式为多少?(B)
A、T(N)=Nlog2N
B、T(N)=N+Nlog2N
C、T(N)=N2
D、T(N)=N+N2
E、T(N)=Nlog2N+1
6.
小度遇上了某个需求,求给定两个字符串的最长公共子序列的长度:
一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。
例如,“bad” 是 “baidu” 的子序列,但 “bud” 不是 “baidu” 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。
如输入:
text1 = “baidu”, text2 = “bad”
输出:
1
3
小度写了如下C++代码完成了此功能:

int dp[1000][1000];
int max(int a,int b)
{
   
    if(a>b) return a;
    return b;
}
 
int longestCommonSubsequence(string text1, string text2) {
   
        int len1=text1.size();
        int len2=text2.size();
        for(int i=0;i<len1;i++){
   
            for(int j=0;j<len2;j++){
   
                if(text1[i]==text2[j]){
   
                    dp[i+1][j+1]=dp[i][j]+1;
                }
                else{
   
                    dp[i+1][j+1]=__________;
                }
            }
       }
       return dp[len1][len2];
}

则以上核心代码填什么可以正确实现此功能?(A)

A、max(dp[i+1][j],dp[i][j+1])
B、max(dp[i+1][j],dp[i][j])
C、max(dp[i][j+1],dp[i][j])
D、max(dp[i-1][j],dp[i][j-1])
E、max(dp[i-1][j],dp[i][j])
7.
已知字符集{ a, b, c, d, e, f },若各字符出现的次数分别为{ 6, 3, 8, 2, 10, 4 },若字符f对应的哈夫曼编码为100,则字符e对应的哈夫曼编码为?(A)
A、11
B、10
C、101
D、110
E、01
F、无法确定
8.
请判断以下哪个C++ STL容器的底层是哈希表实现的(C)
A、std::set
B、std::map
C、std::unordered_map
D、std::multimap
9.
下列php脚本执行的结果是什么?(C)

<?php
function test()
{
   
echo  "HELLO WORLD!\n";
}
TEST();

A、无任何输入
B、HELLO WORLD!\n
C、HELLO WORLD!
D、编译出错
10.
请你判断下面耦合度最高的代码是?(A)
A

void funA(int a){
   
  xxx;
  funB(a);
  xxx;
}

int funB(int b){
   
  int c=b;
  xxx;
  return c;
}

B

void funA(int a
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值