百济神州后端开发工程师 - 部分笔试题 - 解析

news2025/1/12 22:18:00

选择题

1.下面关于Java中异常相关的说法错误的是(A)

A.编译时异常是在编译时期间发生的异常,不需要强制处理,但可以选择性地处理

B.Java中,所有异常类的顶层父类为Throwable类

C.在 try-catch 块中,多个catch块按照它们声明的顺序进行匹配,只有第一个匹配到的catch块会被执行,其他的会被忽略

D.应该将特定异常类型的catch块放在前面,将更通用的异常类型的catch块放在后面

2.下面 Java 代码的运行结果为( D )

public class Test {
    public static void main(String[] args){
        System.out.println(5 && 4);
    }
}

A.运行错误

B. 4

C.5

D.编译错误

3.下面关于 Java 中的内部类说法错误的是( C )

A.匿名内部类没有名字,常用于实现接口或继承父类的匿名子类

B.内部类可以访问外部类的私有成员

C.局部内部类可以直接访问所在方法的局部变量

D.静态内部类不需要依赖于外部类实例,可以直接创建

解析

在Java 8之前, 局部内部类只能访问所在方法的 final 修饰的局部变量。 Java 8 开始可以访问 effectively final (即一旦初始化就不可改变)的局部变量。

4.下面 Java 代码的运行结果为(编译错误)

interface Frob{
    float v= 2.0f;
}
class Super{
    int v=3;
}
public class Test extends Super implements Frob{
    public static void main(String[] args){
        new Test().printV();
    }
    void printV(){
        System.out.println(v);
    }
}

解析

Test 类同时继承 Super 类并实现 Frob 接口,并且两者都有名为 v 的成员变量,导致编译器无法自动确定应该使用哪个 v,产生歧义。

5.下列关于数据字典说法错误的是?(AD)

A.数据字典可以将包含每个关系的记录的块存储在链表中

B.数据字典中存储有关系模式和关于关系的其他元数据

C.数据字典可能记录关系的存储组织及关系的存储位置

D.系统必须存储的信息类型不包括属性的域和长度

解析

数据字典主要存储元数据信息,而不是将包含每个关系的记录的块存储在链表中。数据字典必须存储属性(列)的域(数据类型)和长度信息。

6.以下关于 DNS(Domain Name System)的说法中,错误的是(A)。

A.DNS 只能使用 UDP 协议进行通信,因为 UDP 协议的传输速度快,适合用于域名解析这种对实时性要求高的场景。

B.DNS 可以将域名解析为 IP 地址,使得用户可以通过易于记忆的域名来访问网络资源。

C.DNS 采用分布式的数据库结构,由多个 DNS 服务器协同工作,提高了系统的可靠性和可扩展性。

D.DNS 缓存可以加快域名解析的速度,但也可能导致解析结果不准确,因为缓存中的数据可能过期。

解析

DNS 不仅可以使用 UDP 协议,还可以使用 TCP 协议,尤其是在需要传输较大 DNS 数据时。

7.现有一硬盘,其中磁盘转速是10000转/分,平均寻道时间是6ms,每个磁道包含800个扇区,则访问一个扇区的平均存取时间为( C )(结果保留两位小数)

A.11.21 ms

B.8.16 ms

C.9.01 ms

D.10.09 ms

解析

平均存取时间 = 平均寻道时间 + 平均旋转延迟 + 数据传输时间

平均旋转延迟是磁头等待目标扇区旋转到其下方的平均时间。

硬盘转速为 10000 转/分,意味着每转耗时 60 秒 / 10000 转 = 0.006 秒/转 = 6 ms/转。

平均旋转延迟是旋转半圈的时间,所以平均旋转延迟为 6 ms/转 / 2 = 3 ms。

数据传输时间是磁头读取或写入一个扇区数据的时间。

每个磁道有 800 个扇区,所以转一圈可以读取 800 个扇区。

每个扇区的传输时间为: 6 ms/转 / 800 扇区/转 = 0.0075 ms/扇区。

因此,访问一个扇区的平均存取时间约为 9.0075 ms,保留两位小数后为9.01ms。

8.以下关于 RESTfuI API 的特性描述中,错误的是( A )。

A.强耦合性,客户端与服务器端紧密耦合。

B.无状态性,服务器不保存客户端的状态信息。

C.统一接口,使用标准的 HTTP 方法进行资源操作。

D.可缓存性,响应结果可以被缓存以提高性能。

解析

RESTful API 的一个重要目标是实现松耦合,而不是强耦合。

9.在 Linux 中,以下哪个命令可以用于查看文件的前20行内容( C )

A.grep -20 filename

B.tail -20 filename

C.head -20 filename

D.cat -20 filename

10.在Linux系统中,有一个目录/projects,该目录下有多个子目录和文件。需要将/projects目录设置为:所有者可以读写执行,组用户可以读和执行,其他用户没有权限,同时确保子目录和文件继承该权限。假设当前权限未知,正确的命令是( B )

A. chmod -R u+rwx,g+rx /projects

B. chmod -R u=rwx,g=rx,o= /projects

C. chmod -R 740 /projects

D. chmod -R u+rwx,g+rx,o=/projects

解析

C选项将 组用户的权限设置为 r-- (只读),而不是题目要求的 rx (读和执行)。AD选项使用了 + 添加权限,而非设置指定权限。

11.在一个医院管理系统中,已知分区的主存容量为180MB,初始阶段没有主存被占用(即为空),主存分配和释放的顺序(单位都为MB)为分配60,分配40,分配70,释放60,分配20,在采用最佳适应算法时,主存中最大空闲分区的大小是( C )

A.60MB

B.30MB

C.40MB

D.50MB

解析

主存状态:[20MB (已用)], [40MB (空闲)], [40MB (已用)], [70MB (已用)], [10MB (空闲)]。

当前主存中的空闲分区大小分别为:40MB和10MB。因此,最大的空闲分区大小是 40MB。

12.下列属于文件扫描及索引选择方法的是( C )

I、线性搜索

II、聚集索引,码上等值比较

III、聚集索引,非码上的等值比较

IV、辅助索引,等值比较

A. II、III、IV

B.I、II、III

C.I、II、III、IV

D.I、III、IV

13.在一个游乐园过山车系统中,有6个进程共享一个互斥代码段,如果最多允许4个进程同时进入互斥段,那么信号量的初值为( D )

A.6

B.0

C.1

D.4

14.存在一组关键字序列{19,28,7,92,83,45,26,71},对该关键字序列进行直接插入排序,当把关键字26插入到对应的有序表中时,需要查找( A )次才能找到插入的位置。

A.5

B.2

C.3

D.4

解析

插入 26:

比较 26 和 92 (1次)

比较 26 和 83 (2次)

比较 26 和 45 (3次)

比较 26 和 28 (4次)

比较 26 和 19 (5次)

最终插入位置在 19 和 28 之间: {7, 19, 26, 28, 45, 83, 92}

因此,正确查找次数为 5 次。

编程题

现在小明有一个长度为n的数组a,编号为0到n-1,其中初始条件下a[i]=i,
现在可以进行若干次操作,每一次操作对所有元素进行一次修改:对于编号为i的元素,若i是偶数,则a[i]= a[i/2],若i是奇数,则a[i]= a[n/2+(i-1)/2],现在小明想知道最少操作多少次(不可以不操作),能使得操作后的数组变成原数组。

输入描述

每个测试文件均包含多组测试数据。

第一行输入一个整数T(1≤T≤10^3)代表数据组数,每组测试数据描述如下:

第一行输入一个整数n(2≤n≤10^5)(且保证是一个偶数),代表数组的长度。

输出描述

对于每一组测试数据,输出一个答案代表最少的操作次数。

题解

import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // 读取测试用例的数量
        int T = scanner.nextInt();
        while (T-- > 0) {
            // 读取数组的长度
            int n = scanner.nextInt();
            // 初始化原始数组
            int[] original = new int[n];
            for (int i = 0; i < n; i++) {
                // 初始化原始数组的值
                original[i] = i;
            }
            // 复制原始数组到当前数组
            int[] current = Arrays.copyOf(original, n);
            int operations = 0;
            while (true) {
                // 操作次数加1
                operations++;
                int[] next = new int[n];
                for (int i = 0; i < n; i++) {
                    // 根据索引的奇偶性更新下一个数组的值
                    if (i % 2 == 0) {
                        next[i] = current[i / 2];
                    } else {
                        next[i] = current[n / 2 + (i - 1) / 2];
                    }
                }
                // 更新当前数组为下一个数组
                current = next;
                // 如果当前数组与原始数组相等,则跳出循环
                if (Arrays.equals(current, original)) {
                    break;
                }
            }
            // 输出操作次数
            System.out.println(operations);
        }
        scanner.close();
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2275674.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何优雅地绘制时序图

说到时序图&#xff0c;相信所有从事嵌入式开发的伙伴都非常熟悉&#xff0c;在各种元器件手册以及处理器说明书中&#xff0c;但凡涉及到通信、接口、交互等内容&#xff0c;都会涉及到时序图。时序图可以非常详细且明确地描述硬件及软件接口中各个信号的时序关系&#xff0c;…

SpringCloud系列教程:微服务的未来(十一)服务注册、服务发现、OpenFeign快速入门

本篇博客将通过实例演示如何在 Spring Cloud 中使用 Nacos 实现服务注册与发现&#xff0c;并使用 OpenFeign 进行服务间调用。你将学到如何搭建一个完整的微服务通信框架&#xff0c;帮助你快速开发可扩展、高效的分布式系统。 目录 前言 服务注册和发现 服务注册 ​编辑 …

WebGIS在应急灾害中对村庄、风景区、机场的影响范围应用-以日喀则市定日县地震为例

目录 前言 一、关于影响范围 1、震中距离5公里 2、震中20公里范围 3、20到80公里范围 二、空间查询知识 1、相关数据介绍 2、空间数据查询 三、前后端数据查询以及web可视化实现 1、后台API实现 2、WebGIS前端实现 四、Web成果展示 1、空间位置分析 2、包含风景区…

使用网页版Jupyter Notebook和VScode打开.ipynb文件

目录 正文 1、网页版Jupyter Notebook查看 2、VScode查看 因为总是忘记查看文件的网址&#xff0c;收藏了但分类众多每次都找不到……当个记录吧&#xff08;/捂脸哭&#xff09;&#xff01; 正文 此处以gitub中的某个仓库为例&#xff1a; https://github.com/INM-6/mu…

景联文科技提供高质量多模态数据处理服务,驱动AI新时代

在当今快速发展的AI时代&#xff0c;多模态数据标注成为推动人工智能技术进步的关键环节。景联文科技作为行业领先的AI数据服务提供商&#xff0c;专注于为客户提供高质量、高精度的多模态数据标注服务&#xff0c;涵盖图像、语音、文本、视频及3D点云等多种类型的数据。通过专…

Python在Excel工作表中创建数据透视表

在数据处理和分析工作中&#xff0c;Excel作为一个广泛使用的工具&#xff0c;提供了强大的功能来管理和解析数据。当面对大量复杂的数据集时&#xff0c;为了更高效地总结、分析和展示数据&#xff0c;创建数据透视表成为一种不可或缺的方法。通过使用Python这样的编程语言与E…

django基于Python的电影推荐系统

Django 基于 Python 的电影推荐系统 一、系统概述 Django 基于 Python 的电影推荐系统是一款利用 Django 框架开发的智能化应用程序&#xff0c;旨在为电影爱好者提供个性化的电影推荐服务。该系统通过收集和分析用户的观影历史、评分数据、电影的属性信息&#xff08;如类型…

GPT-SoVITS学习01

1.什么是TTS TTS&#xff08;Text-To-Speech&#xff09;这是一种文字转语音的语音合成。类似的还有SVC&#xff08;歌声转换&#xff09;、SVS&#xff08;歌声合成&#xff09;等。 2.配置要求 GPT-SoVITS对电脑配置有较高的要求。 训练&#xff1a;对于Windows电脑&#…

计算机网络 (36)TCP可靠传输的实现

前言 TCP&#xff08;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP通过多种机制实现可靠传输&#xff0c;这些机制主要包括连接管理、序列号和确认应答机制、重传机制、流量控制、拥塞控制等。 一、连接管理 TCP使用三次握手&#xff0…

视频编辑最新SOTA!港中文Adobe等发布统一视频生成传播框架——GenProp

文章链接&#xff1a;https://arxiv.org/pdf/2412.19761 项目链接&#xff1a;https://genprop.github.io 亮点直击 定义了一个新的生成视频传播问题&#xff0c;目标是利用 I2V 模型的生成能力&#xff0c;将视频第一帧的各种变化传播到整个视频中。 精心设计了模型 GenProp&…

make工程管理器与Makefile

目录 一、介绍 1、make工程管理器 2、Makefile 二、Makefile语法规则 1、Makefile语法格式 2、Makefile中特殊处理与伪目标 3、变量、规则与函数 (1)自定义变量使用示例 (2)自动变量使用示例 一、介绍 1、make工程管理器 定义&#xff1a; make是一个命令工具&…

【git】-2 分支管理

目录 一、分支的概念 二、查看、创建、切换分支 1、查看分支-git branch 2、创建分支- git branch 分支名 3、切换分支- git checkout 分支名 三、git指针 -实现分支和版本间的切换 四、普通合并分支 git merge 文件名 五、冲突分支合并 ​​​​​​【git】-初始gi…

3DGabor滤波器实现人脸特征提取

import cv2 import numpy as np# 定义 Gabor 滤波器的参数 kSize 31 # 滤波器核的大小 g_sigma 3.0 # 高斯包络的标准差 g_theta np.pi / 4 # Gabor 函数的方向 g_lambda 10.0 # 正弦波的波长 g_gamma 0.5 # 空间纵横比 g_psi np.pi / 2 # 相位偏移# 生成 Gabor 滤…

接口项目架构流程图-thinkphp6-rabbitmq

一、整个系统流程 第一步&#xff1a;平台在创建好后开启消息队列&#xff1b; 第二步&#xff1a;平台为需要服务的客户开好账号并传输对应的公私钥文件&#xff1b; 第三步&#xff1a;客户通过平台分享的接口连接地址采用开户时的手机号查看&#xff1b; 第四步&#xff1a;…

Vue3初学之组件通信

一起进行学习&#xff1a; 在 Vue 3 中&#xff0c;组件通信是一个非常重要的概念&#xff0c;它决定了如何在父子组件之间、兄弟组件之间以及跨层级组件之间传递数据和事件。以下是 Vue 3 中常见的组件通信方式&#xff1a; 父子组件通信 1.1 父组件向子组件传递数据&#x…

2025年第三届“华数杯”国际大学生数学建模竞赛【A题】Problem A: Can He Swim Faster

问题1&#xff1a;运动员的出色比赛表现通常得益于艰苦且持续的专业训练&#xff0c;这不仅提升了游泳技能&#xff0c;也增强了生理储备。比赛中&#xff0c;科学控制游泳速度是关键&#xff0c;包括保持个人节奏、寻求最佳身体状态节奏和合理分配体力。针对自由泳项目&#x…

【计算机网络】lab4 Ipv4(IPV4的研究)

&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a; &#x1f3c0;计算机网络_十二月的猫的博客-CSDN博客 &#x1f4aa;&#x1f3fb; 十二月的寒冬阻挡不了春天的脚步&#xff0c;十二点的黑夜遮蔽不住黎明的曙光 目录 1. 前言 2.…

ELFK日志采集实战

一、日志分析概述 日志分析是运维工程师解决系统故障&#xff0c;发现问题的主要手段 日志主要包括系统日志、应用程序日志和安全日志 系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因 经常分析日志可以了解服务器的负荷&#x…

辅助--Inspector

辅助–Inspector 1.Introduction This manual explains how to use the Inspector. 1.1.Overview Inspector is a Qt-based library that provides functionality to interactively inspect low-level content of the OCAF data model, OCCT viewer and Modeling Data. Thi…

如何播放视频文件

文章目录 1. 概念介绍2. 使用方法2.1 实现步骤2.2 具体细节3. 示例代码4. 内容总结我们在上一章回中介绍了"如何获取文件类型"相关的内容,本章回中将介绍如何播放视频.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 播放视频是我们常用的功能,不过Flutter官方…