当前位置: 首页 > news >正文

备战秋招 | 笔试强训19

目录

一、选择题

二、编程题

三、选择题题解

四、编程题题解


一、选择题

1、二分查找的时间复杂度()

A. O(N*log(N))

B. O(N)

C. O(log(N))

D. O(N^2)

2、有一个单向链表中有一个A、B两个相邻元素,有一个指针p指向元素A,现将一个指针r指向的S元素要插入到A和B之间,该进行操作()

A. p->next=p->next->next

B. r-next=p;p->next=r->next

C. r->next=p->next;p->next=r

D. r=p->next;->next=r->next

E. r->next=p;p->next=r

F. p=p->next->next

3、双向链表中有两个指针域,llink和rlink分别指向前驱和后继,设p指向链表中的一个结点,现要求删去p所指结点,则正确的删除是()(链中结点数大于2,p不是第一个结点)

A. p->llink->rlink:=p->llink; p->llink->rlink:=p->rlink; dispose(p);

B. dispose(p); p->llink->rlink:=p->llink; p->llink->rlink:=p->rlink;

C. p->link->rlink:=p->llink; dispose(p); p->llink->rlink:=p->rlink;

D. 以上A,B,C都不对

4、一个栈的入栈序列是A,B,C,D,E,则栈的不可能输出序列是()

A. EDCBA

B. DECBA

C. DCEAB

D. ABCDE

5、循环队列放在一维数组A[0…M-1]中,end1指向队头元素,end2指向队尾元素的后一个位置。假设队列两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。初 始时为空,下列判断队空和队满的条件中,正确的是()

A. 队空:end1==end2;队满:end1==(end2+1) mod M

B. 队空:end1==end2;队满:end2==(end1+1) mod (M-1)

C. 队空:end2==(end1+1) mod M;队满:end1==(end2+1) mod M

D. 队空:end1==(end2+1) mod M;队满:end2==(end1+1) mod (M-1)

6、已知二叉树后序遍历序列是bfegcda,中序遍历序列是badefcg,它的前序遍历序列是()

A. abcdefg

B. abdcefg

C. adbcfeg

D. abecdfg

7、某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为()

A. 不存在这样的二叉树

B. 200

C. 198

D. 199

8、设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造哈希表,哈希函数为H(key)=key MOD 13,哈希地址为1的链中有()个记录

A. 1

B. 2

C. 3

D. 4

9、以下哪种排序是不稳定排序()

A. 冒泡

B. 插入排序

C. 归并排序

D. 快速排序

二、编程题

1、汽水瓶  题目链接

2、查找两个字符串a,b中的最长公共子串  题目链接

三、选择题题解

1、二分查找的时间复杂度()

A. O(N*log(N))

B. O(N)

C. O(log(N))

D. O(N^2)

正确答案:C

题解:

         基本概念题;

2、有一个单向链表中有一个A、B两个相邻元素,有一个指针p指向元素A,现将一个指针r指向的S元素要插入到A和B之间,该进行操作()

A. p->next=p->next->next

B. r-next=p;p->next=r->next

C. r->next=p->next;p->next=r

D. r=p->next;->next=r->next

E. r->next=p;p->next=r

F. p=p->next->next

正确答案: C

题解:

         如下图所示,我们要插入一个新的结点;

3、双向链表中有两个指针域,llink和rlink分别指向前驱和后继,设p指向链表中的一个结点,现要求删去p所指结点,则正确的删除是()(链中结点数大于2,p不是第一个结点)

A. p->llink->rlink:=p->llink; p->llink->rlink:=p->rlink; dispose(p);

B. dispose(p); p->llink->rlink:=p->llink; p->llink->rlink:=p->rlink;

C. p->link->rlink:=p->llink; dispose(p); p->llink->rlink:=p->rlink;

D. 以上A,B,C都不对

正确答案;D

题解:

         正确代码我们可以结合下图来看;

4、一个栈的入栈序列是A,B,C,D,E,则栈的不可能输出序列是()

A. EDCBA

B. DECBA

C. DCEAB

D. ABCDE

正确答案:C

题解:

         C选项,当我们第一个出D时,代表ABC已经入栈,此时我们出一个C,栈中还有AB,我们再入一个E,然后再出一个E,接着栈顶的元素应该是B而不是A,故C错误;

5、循环队列放在一维数组A[0…M-1]中,end1指向队头元素,end2指向队尾元素的后一个位置。假设队列两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。初 始时为空,下列判断队空和队满的条件中,正确的是()

A. 队空:end1==end2;队满:end1==(end2+1) mod M

B. 队空:end1==end2;队满:end2==(end1+1) mod (M-1)

C. 队空:end2==(end1+1) mod M;队满:end1==(end2+1) mod M

D. 队空:end1==(end2+1) mod M;队满:end2==(end1+1) mod (M-1)

正确答案:A

题解:

         两个下标在相同位置时为空,队尾+1模上空间大小等于队头等于满;故选A;

6、已知二叉树后序遍历序列是bfegcda,中序遍历序列是badefcg,它的前序遍历序列是()

A. abcdefg

B. abdcefg

C. adbcfeg

D. abecdfg

正确答案:B

题解:

         我们每次可通过后序确定一个根,并在中序中分割左右子树;具体分析如下;

7、某二叉树共有 399 个结点,其中有 199 个度为 2 的结点,则该二叉树中的叶子结点数为()

A. 不存在这样的二叉树

B. 200

C. 198

D. 199

正确答案:A

题解:

         公式,n0 = n2 + 1;计算得出200;

8、设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造哈希表,哈希函数为H(key)=key MOD 13,哈希地址为1的链中有()个记录

A. 1

B. 2

C. 3

D. 4
正确答案:D

题解:       

         题目即让我们求得上述哪些数据模13等于1;分别为1,14,27,79;故选D;

9、以下哪种排序是不稳定排序()

A. 冒泡

B. 插入排序

C. 归并排序

D. 快速排序

正确答案:D

题解:

         快排无法保证排序的稳定性;

四、编程题题解

1、汽水瓶

思路:我们模拟喝汽水的过程,我们创建一个变量记录当前瓶子个数,一个变量记录总共喝了多少瓶;然后模拟喝汽水过程求解;

#include <iostream>
using namespace std;int main() 
{int n;while(cin >> n){if(n == 0)break;// 记录当前瓶子个数int botton = n;int water = 0;while(botton >= 3){// 可以兑换汽水数water += botton / 3;// 求得喝完以后的瓶子数botton = botton % 3 + botton / 3;}// 处理特殊情况,借瓶子if(botton == 2)water += 1;cout << water << endl;}return 0;
}

2、查找两个字符串a,b中的最长公共子串

思路:此题建议使用动态规划来做,找到以i-1结尾的str1与str2最大连续字符的个数; 

#include <iostream>
#include <string>
#include <vector>
using namespace std;string LComSub(string& str1, string& str2)
{int len1 = str1.size();int len2 = str2.size();// 多开一个位置vector<vector<int>> dp(len1 + 1, vector<int>(len2 + 1, 0));int start = 0;int max = 0;for(int i = 1; i <= len1; i++){for(int j = 1; j <= len2; j++){if(str1[i - 1] == str2[j - 1])dp[i][j] = dp[i - 1][j - 1] + 1;if(dp[i][j] > max){max = dp[i][j];start = i - max;}}}return str1.substr(start, max);
}int main() 
{string str1, str2;cin >> str1 >> str2;// 最短字符串放在str1中if(str1.size() > str2.size())str1.swap(str2);cout << LComSub(str1, str2) << endl;
}

相关文章:

备战秋招 | 笔试强训19

目录 一、选择题 二、编程题 三、选择题题解 四、编程题题解 一、选择题 1、二分查找的时间复杂度&#xff08;&#xff09; A. O(N*log(N)) B. O(N) C. O(log(N)) D. O(N^2) 2、有一个单向链表中有一个A、B两个相邻元素&#xff0c;有一个指针p指向元素A&#xff0c;现将…...

第一章 计算机网络概述

第一章 计算机网络概述 1.1 计算机网络在信息时代的作用 1.2 因特网概述 网络分类&#xff1a; 网络&#xff1a;许多计算机连接在一起的的局域网&#xff1b; 互联网&#xff1a;internet许多网络连接在一起&#xff1b; 因特网&#xff1a;Internet 全球最大的互联网&…...

谷粒商城第六天-商品服务之分类管理下的获取三级分类树形列表

目录 一、总述 1.1 前端思路 1.2 后端思路 二、前端部分 2.1 在网页中建好目录及菜单 2.1.1 建好商品目录 2.1.2 建好分类管理菜单 ​编辑 2.2 编写组件 2.2.1 先完成组件文件的创建 2.2.2 编写组件 2.2.2.1 显示三级分类树形列表 三、后端部分 3.1 编写商品分类…...

【UI自动化测试】Appium+Python+Unittest+HTMLRunner

简介 获取AppPackage和AppActivity 定位UI控件的工具 脚本结构 PageObject分层管理 HTMLTestRunner生成测试报告 启动appium server服务 以python文件模式执行脚本生成测试报告 【B站最通俗易懂】Python接口自动化测试从入门到精通&#xff0c;超详细的进阶教程&#xff0c;看完…...

【限时优惠】红帽openstack管理课程(CL210) 即将开课

课程介绍 通过实验室操作练习&#xff0c;学员将能够深入学习红帽企业 Linux OpenStack 平台各服务的手动安装方法&#xff0c;还将了解 OpenStack 开发社区的未来发展计划。 培训地点&#xff1a; 线下面授&#xff1a;苏州市姑苏区干将东路666号401室&#xff1b; 远程…...

Golang之路---02 基础语法——函数

函数 函数定义 func function_name( [parameter list] ) [return_types] {函数体 }参数解释&#xff1a; func&#xff1a;函数由 func 开始声明function_name&#xff1a;函数名称&#xff0c;函数名和参数列表一起构成了函数签名。[parameter list]&#xff1a;参数列表&a…...

数据结构和算法入门(时间/空间复杂度介绍--java版)

数据结构和算法入门&#xff08;时间/空间复杂度介绍–java版&#xff09; write in front 作者&#xff1a; 向大佬学习 专栏&#xff1a; 数据结构&#xff08;java版&#xff09; 作者简介&#xff1a;大二学生 希望能学习其同学和大佬的经验&#xff01; 本篇博客简介&…...

Spring Mvc 文件上传(MultipartFile )—官方原版

一、创建应用程序类 要启动Spring Boot MVC应用程序&#xff0c;首先需要一个启动器。在这个示例中&#xff0c;已经添加了spring-boot-starter thymelaf和spring-boot-starter web作为依赖项。要使用Servlet容器上传文件&#xff0c;您需要注册一个MultipartConfigElement类&…...

【E题】2023年电赛运动目标控制与自动追踪系统方案

系统的设计和制作可以按照以下步骤进行&#xff1a; 设计红色光斑位置控制系统&#xff1a; 选择合适的红色激光笔&#xff0c;并将其固定在一个二维电控云台上。 使用电机和编码器来控制电控云台的水平和垂直运动。 设计一个控制电路&#xff0c;可以通过输入控制信号来控制…...

企业网络安全之零信任和身份认证

零信任并不是一种技术&#xff0c;而是一个安全概念&#xff0c;是一种建立安全战略的理念、方法和框架。 零信任提供了一系列概念和思想&#xff0c;其中心思想是怀疑一切&#xff0c;否定一切&#xff0c;不再以网络边界为限&#xff0c;不能再将内部网络定义为可信任的&…...

【雕爷学编程】MicroPython动手做(28)——物联网之Yeelight 5

知识点&#xff1a;什么是掌控板&#xff1f; 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片&#xff0c;支持WiFi和蓝牙双模通信&#xff0c;可作为物联网节点&#xff0c;实现物联网应用。同时掌控板上集成了OLED…...

[运维|中间件] 东方通TongWeb使用笔记

参考文献 东方通tongweb部署服务 东方通tongweb部署服务 使用笔记 默认访问地址 http://ip:9060/console/默认用户名密码 TongWeb7.0默认用户名密码&#xff1a;thanos&#xff0c;thanos123.com...

WIZnet W6100-EVB-Pico DHCP 配置教程(三)

前言 在上一章节中我们讲了网络信息配置&#xff0c;那些网络信息的配置都是用户手动的去配置的&#xff0c;为了能跟电脑处于同一网段&#xff0c;且电脑能成功ping通板子&#xff0c;我们不仅要注意子网掩码&#xff0c;对于IP地址主机位和网络位的划分&#xff0c;而且还要注…...

【Linux】Ansible 脚本 playbook 剧本

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 Ansible 脚本 playbook 剧本 playbook 剧本Templates 模块tags 模块Roles 模块在一个 playbook 中使用 roles 的步骤 playbook 剧本 playbooks 本身由以下各部分组成 &#…...

解决 tensorflow 出现的 ImportError: Could not find the DLL(s) ‘msvcp140_1.dll‘. 问题

在安装完tensorflow库后出现 问题详述&#xff1a; ImportError: Could not find the DLL(s) msvcp140_1.dll. TensorFlow requires that these DLLs be installed in a directory that is named in your %PATH% environment variable. You may install these DLLs by downlo…...

百度与AI:历史、投资和监管

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 百度的人工智能在中国具有先发优势 随着ChatGPT的爆火&#xff0c;人工智能重新引起了投资者的注意&#xff0c;然而人工智能并不是突然爆火的&#xff0c;而是全球众多公司在人工智能技术上进行数十年如一日的研发和积累&a…...

Kafka3.0.0版本——Broker(Zookeeper服务端存储的Kafka相关信息)

目录 一、启动zookeeper集群及kafka集群服务启动1.1、先启动三台zookeeper集群服务&#xff0c;再启动三台kafka集群服务1.2、使用PrettyZoo连接zookeeper客户端工具 二、在zookeeper服务端存储的Kafka相关信息 一、启动zookeeper集群及kafka集群服务启动 1.1、先启动三台zook…...

【图论】无向图连通性(tarjan算法)

割边&#xff1a;dfn[u]<low[v] 割点&#xff1a;dfn[u]<low[v] (若为根节点&#xff0c;要有两个v这样的点) 一.知识点&#xff1a; 1.连通&#xff1a; 在图论中&#xff0c;连通性是指一个无向图中的任意两个顶点之间存在路径。如果对于图中的任意两个顶点 u 和 v&…...

Docker安装

Docker实践 yum安装 YUM源可以使用官方YUM源、清华大学开源镜像站配置YUM源&#xff0c;也可以使用阿里云开源镜像站提供的YUM源&#xff0c;建议选择使用阿里云开源镜像站提供的YUM源&#xff0c;原因速度快。 地址: https://developer.aliyun.com/mirror/ 我们安装ce版 …...

06. 计数原理

6. 计数原理 6.1 分类加法计数原理与分步乘法计数原理 分类加法计数原理定义 完成一件事&#xff0c;有 n n n 类办法&#xff0c;在第1类办法中有 m 1 m_1 m1​ 种不同的方法&#xff0c;在第2类办法中有 m 2 m_2 m2​ 种不同的方法&#xff0c;…&#xff0c;在第 n n…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0&#xff1a;开发环境同步测试 cookie 至 localhost&#xff0c;便于本地请求服务携带 cookie 参考地址&#xff1a;https://juejin.cn/post/7139354571712757767 里面有源码下载下来&#xff0c;加在到扩展即可使用FeHelp…...

(十)学生端搭建

本次旨在将之前的已完成的部分功能进行拼装到学生端&#xff0c;同时完善学生端的构建。本次工作主要包括&#xff1a; 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路&#xff1a; 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑&#xff1a;async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观&#xff0c;可持续性好高效率高复用&#xff0c;可移植性好高内聚&#xff0c;低耦合没有冗余规范性&#xff0c;代码有规可循&#xff0c;可以看出自己当时的思考过程特殊排版&#xff0c;特殊语法&#xff0c;特殊指令&#xff0c;必须…...