笔试强训(二十一)

news/2024/5/17 16:14:28/文章来源:https://blog.csdn.net/m0_60631323/article/details/127313272

目录

  • 一、选择题
  • 二、编程题
    • 2.1 MP3光标位置
      • 2.1.1 题目
      • 2.1.2 题解
    • 2.2 洗牌
      • 2.2.1 题目
      • 2.2.2 题解

一、选择题

(1)下列叙述错误的是(B)
A.二叉链表是二叉树的存储结构
B.循环链表是循环队列的存储结构
C.栈是线性结构
D.循环队列是队列的存储结构

循环队列的存储结构是数组

(2)下述二叉树中,哪一种满足性质:从任意节点出发到根的路径上所经过的节点序列按其关键字有序(D)
A.二叉排序树
B.哈夫曼树
C.AVL树
D.堆

AVL树是平衡二叉排序树(二叉搜索树)
哈夫曼树是带权值的树,与元素大小顺序无关
在这里插入图片描述
堆是满足题目要求的,在堆中的所有节点都满足根节点大于(或小于)左右孩子

(3)为提高散列(Hash)表的查找效率,可以采取的措施是(D)

  1. 增大装载因子
  2. 设计冲突少的散列函数
  3. 处理冲突时避免产生聚集现象
    A.1
    B.2
    C.1,2
    D.2,3

增大装载因子,会增加冲突概率,查找效率变慢

(4)下列排序算法中,最坏情况下的时间复杂度最低的是(C)
A.希尔排序
B.快速排序
C.堆排序
D.冒泡排序

希尔排序最坏情况下的时间复杂度为O(N^2)
快速排序,当出现大量重复元素或数组几乎有序的时候,递归退化成链表,时间复杂度O(N^2)
堆排序的时间复杂度始终是O(N*logN)
冒泡排序的时间复杂度O(N^2)

二、编程题

2.1 MP3光标位置

2.1.1 题目

在这里插入图片描述

2.1.2 题解

思路:按照题目给出的翻页要求转化成代码即可
当歌曲数目小于4的情况比较简单,我们主要讨论一下当歌曲数目大于四的情况
使用变量mouse保存光标位置,begin保存光标所在页的起始位置
初始情况mouse=1,begin=1

(1)屏幕显示的是第一页时,光标显示的第一首歌曲时,也就是mouse=1,begin=1时,如果当前命令为U,此时需要将光标移动到最后一首歌,并将begin移动到最后一首歌所在页的第一首歌的位置
mouse=n;
begin=n-3;
(2)屏幕显示的是最后一页时,光标显示的最后一首歌曲时,也就是当mouse=n,如果当前命令是D,需要将光标移动到第一首歌,并将begin也移动到第一首歌
mouse=1;
begin=1;
(3)屏幕显示的不是第一页时,光标在当前屏幕显示的第一首歌曲时,也就是begin==mouse的情况,且用户按Up键后
begin–;
mouse–;
(4)屏幕显示的不是第一页时,光标在当前屏幕显示的最后一首歌曲时,也就是begin+3 == mouse的情况,且用户按Down键后
mouse++;
beign++;
(5)其他情况根据命令,移动光标位置即可,beign位置不用移动

【注意】:
要先判断(1)和(2)的情况,后判断(3)和(4) 的情况,最后判断(5)
代码:

 public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();String str = scanner.next();int mouse = 1;int begin = 1;if (n < 4) {for (int i = 0; i < str.length(); i++) {if (mouse == 1 && str.charAt(i) == 'U') {mouse = n;} else if (mouse == n && str.charAt(i) == 'D') {mouse = 1;} else if (str.charAt(i) == 'U') {mouse--;} else if (str.charAt(i) == 'D') {mouse++;}}for (int i = 1; i <= n; i++) {System.out.print(i + " ");}System.out.println();System.out.println(mouse);} else {for (int i = 0; i < str.length(); i++) {if (begin == 1 && mouse == 1 &&  str.charAt(i) == 'U') {mouse = n;begin = n - 3;} else if (mouse == n && str.charAt(i) == 'D') {begin = 1;mouse = 1;} else if ( begin == mouse && str.charAt(i) == 'U') {begin--;mouse--;} else if (begin + 3 == mouse && str.charAt(i) == 'D') {mouse++;begin++;} else if (str.charAt(i) == 'U') {mouse--;} else if (str.charAt(i) == 'D') {mouse++;}}System.out.println(begin + " " + (begin + 1) + " " + (begin + 2) + " " +(begin + 3));System.out.println(mouse);}}

2.2 洗牌

2.2.1 题目

在这里插入图片描述

2.2.2 题解

思路

在这里插入图片描述

代码:

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner  scanner = new Scanner(System.in);int m = scanner.nextInt();while (m > 0) {int n = scanner.nextInt();int k = scanner.nextInt();int[] arr=new int[2*n];for(int i=0;i<2*n;i++){int pos=i;for(int j=0;j<k;j++){if(pos<n){pos=2*pos;}else {pos=2*(pos-n)+1;}}arr[pos]=scanner.nextInt();}for(int i=0;i<2*n;i++){System.out.print(arr[i]+" ");}System.out.println();m--;}}}

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你会知道有关原型与原型链题的那些事~

你还会想知道的有关的原型 在之前总结中&#xff0c;有总结到一些关于原型与原型链的知识点。本来还想加一下各类笔试中&#xff0c;有关原型与原型链的题目&#xff0c;后面忙着忙着给忘了&#xff0c;现在补上&#xff0c;同时也加深一下自己的理解。 首先还是得把这个图先…

实操演练 | 探索数据库中的枚举ENUM(存储、验证、插入和检索)

在信息技术领域&#xff0c;俗称 IT 领域&#xff0c;枚举&#xff08;ENUM&#xff09;是一种特殊的数据类型&#xff0c;它封装了一组预定义的常量。因此&#xff0c;变量可能只保存枚举的其中一个预定义的值。常见的示例包括指南针方向&#xff08;東、南、西、北&#xff0…

东华大学 2022 oj c++ 无超纲写法 简单易懂 日期

//没有技巧&#xff0c;没有感情 AC代码&#xff1a; #include <stdio.h> #include<iostream> #include<string> #include<bits/stdc.h> using namespace std; int main() { char day[4]; char day1[4] { M,o,n }; char day2[4] { T,u,…

【WPF】Tabcontrol的IsSynchronizedWithCurrentItem属性

如果两个控件都绑定到同一个源(ObservableCollection)集合视图时,该对象会自动绑定到该视图的 CurrentItem。请注意,CollectionViewSource 对象会自动同步货币与所选内容。如果列表控件没有像示例中那样绑定到 CollectionViewSource 对象,则您需要将其 IsSynchronizedWith…

MobileBERT: a Compact Task-Agnostic BERT for Resource-Limited Devices(2020-4-6)

模型介绍 近年来&#xff0c;自然语言处理(NLP)通过使用具有数亿个参数的巨大预训练模型取得了巨大的成功。然而&#xff0c;这些模型受到沉重的模型尺寸和高延迟的影响&#xff0c;因此无法部署到资源有限的移动设备上。因此这里提出了MobileBERT来压缩和加速流行的BERT模型。…

微信小程序中引导用户关注公众号实现方案详细说明

前言 之前讲过如何利用公众号针对指定用户完成业务操作之后实时发送消息.就好比在线医院公众号中看病挂号&#xff0c;挂号预约成功之后微信列表中会新增一条关注的公众号预约成功消息.具体实现步骤可以看下文章如何实现&#xff1a;手把手教你微信公众号如何给指定用户发送消息…

瑞吉外卖06-分页查询

瑞吉外卖06-分页查询 需求分析 问题描述 解决方案 对于createTime、updateTime字段 对于createUser、updateUser字段 代码实现 知识点分析 ThreadLocal 本次功能代码实现&#xff08;免费&#xff09; 瑞吉外卖06-分页查询 需求分析 问题描述 前面我们已经完成了…

嵌入式分享合集76

一、推挽、开漏、OC、OD 与推挽输出相对的是开漏输出&#xff0c;而开漏输出分为OC、OD两种&#xff0c;下文分别详细介绍。 推挽输出 推挽输出&#xff08;Push-Pull Output&#xff09;是由两个MOS或者三极管受到互补控制信号的控制&#xff0c;两个管子始终处在一个导通另一…

解决github分支提交冲突

一、背景 github上fork了base仓库 648540858/wvp-GB28181-pro 到自己仓库&#xff0c;并进行了个性化更改。base仓进行了代码更新&#xff0c;此时我和base仓有了冲突如何解决&#xff1f; 思路&#xff1a;自己仓库的代码合并到主仓是Pull Requests&#xff0c;两个不同仓库or…

PDF怎么转图片?建议收藏这些方法

PDF是我们在传输文件的时候&#xff0c;经常会使用到的一种格式。它可以帮助我们在不同的设备上&#xff0c;打开文件并且不会影响到文件内容的文字结构。而jpg是一种常见的图片格式&#xff0c;有时我们可能会遇到PDF转jpg的情况&#xff0c;那你们知道PDF转jpg怎么转吗&#…

git push 所有分支到新仓库地址

例&#xff1a;从gitee上拉取test-code代码&#xff0c;到自己新仓库地址,test-code仓库有master和test两个分支&#xff1b;具体命令和结果如下 xxxxxxxxopen02:~/src/code/tmp$ git clone gitgitee.com:striver-wy/test-code.git //从gitee下载代码 Cloning into test-code..…

CVPR2022-Rethinking Efficient Lane Detection via Curve Modeling

概述 总结分析了当前&#xff08;图像&#xff09;车道线检测的三类方法&#xff0c;为了解决现有多项式曲线方法的优化困难&#xff0c;提出了使用参数贝塞尔曲线拟合车道线的方案。此外还提出了基于变形卷积的特征翻转融合&#xff0c;以利用驾驶场景中车道的对称特性。 Pape…

Mysql基于binlog日志恢复数据

Mysql基于binlog日志恢复数据 1.Linux安装mysql https://blog.csdn.net/qq_44981526/article/details/126717005 可能遇到的问题 1.net-tools未安装&#xff0c;执行yum install net-tools 2.远程连接工具连接不上mysql grant all privileges on *.* to root% identified…

R语言caret机器学习(四):数据拆分

【R语言数据科学】 🌸个人主页:JOJO数据科学📝个人介绍:统计学top3高校统计学硕士在读💌如果文章对你有帮助,欢迎✌关注、👍点赞、✌收藏、👍订阅专栏✨本文收录于【R语言数据科学】本系列主要介绍R语言在数据科学领域的应用包括: R语言编程基础、R语言可视化、R…

垃圾分类查询管理系统

垃圾分类查询管理系统1.介绍1.1 功能点2.软件架构3.安装启动4.运行截图参考网站&#xff1a;https://lajifenleiapp.com/ 1.介绍 垃圾分类查询管理系统&#xff0c;对不懂的垃圾进行查询进行分类并可以预约上门回收垃圾。 让用户自己分类垃圾&#xff0c; 按国家标准自己分类&…

【最详细最全】Github的jenkins的自动化部署

1>创建项目 2>General 设置 3>配置源码管理 1>勾选Git选项之后&#xff0c;就会出现相关的填写项&#xff0c;根据下图的指引来填写就行了 填写项目的 git 地址, eg&#xff1a; GitHub - Leader755/leader755.github.io: github 博客&#xff08;hexo一键搭建博…

(附源码)计算机毕业设计SSM基于Java的图书馆座位预约系统

&#xff08;附源码&#xff09;计算机毕业设计SSM基于Java的图书馆座位预约系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 …

Torch网络结构/训练过程可视化

一、网络结构的可视化 我们训练神经网络时&#xff0c;除了随着step或者epoch观察损失函数的走势&#xff0c;从而建立对目前网络优化的基本认知外&#xff0c;也可以通过一些额外的可视化库来可视化我们的神经网络结构图。这将更加地高效地向读者展现目前的网络结构。 为了可…

ARM接口技术:汇编语言实现1~100的累加,1+2+3+4+...+99+100=?还有汇编语言程序的编译和运行步骤

进入正题&#xff1a; 在终端输入&#xff1a;vi sum.S&#xff0c;建立文件 1、编写代码&#xff1a;定义两个变量&#xff0c;r0、r1 .global _start _start:mov r0,#1mov r1,#0 sum:add r1,r0add r0,#1cmp r0,#100bgt endb sumend:mov r2,r1nopnopnop2、编译建立一个makefi…

客流管控系统可以协助博物馆进行人数管理

进入21世纪&#xff0c;我国的博物馆建设迎来了新的高潮&#xff0c;无论是数量&#xff0c;还是规模&#xff0c;都前所未有。目前&#xff0c;全国的博物馆总数已经达到5 000多座&#xff0c;为了管控博物馆的人数&#xff0c;很多博物馆都安装了客流管控系统。客流管控系统可…