【Java笔试强训 35】

news2024/10/7 18:28:39

🎉🎉🎉点进来你就是我的人了
博主主页:🙈🙈🙈戳一戳,欢迎大佬指点!

欢迎志同道合的朋友一起加油喔🤺🤺🤺


目录

一、选择题

二、编程题

  🔥年会抽奖

  🔥抄送列表



一、选择题

1、在支持多线程的系统中,进程P创建的若干个线程不能共享的是( )。
A 进程 P 的代码段
B 进程 P 中打开的文件
C 进程 P 的全局变量
D 进程 P 中某线程的栈指针
正确答案: D
A、B、C线程共有,D线程私有。
2、操作系统中关于竞争和死锁的关系下面描述正确的是?
A 竞争一定会导致死锁
B 死锁一定由竞争引起
C 竞争可能引起死锁
D 预防死锁可以防止竞争
正确答案: C
死锁的四个必要条件:
(1)互斥条件:一个资源每次只能被一个进程使用。
(2)请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。
(3) 不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。
(4)循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
3、并发是并行的不同表述,其原理相同。
A 错
B 对
正确答案: A
并发:多个进程在一个CPU下采用时间片轮转的方式,在一段时间之内,让多个进程都得以推进,称之为并发。
并行:多个进程在多个CPU下分别,同时进行运行,这称之为并行。
4、线程的切换会引起进程的切换。
A 错
B 对
正确答案: A
一个进程也可能包含多个线程,对于同一个进程中的线程间切换,不会引起进程切换;不同进程中的线程切换会导致进程切换。
5、操作系统的所有程序是常驻内存的。
A 错
B 对
正确答案: A
对于正在等待事件的进程,可以将其换出外存(部分或全部),以空出更多地内存加载新的进程,使CPU资源充分被利用。
6、把逻辑地址转换程物理地址称为()。
A 地址分配
B 地址映射
C 地址保护
D 地址越界
正确答案: B
B.地址映射:为了保证CPU执行指令时可正确访问存储单元,需将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址
7、在Unix系统中,处于()状态的进程最容易被执行。
A 辅存睡眠
B 内存睡眠
C 内存就绪
D 辅存就绪
正确答案: C

 8、进程的控制信息和描述信息存放在()。
A JCB
B PCB
C AFT
D SFT
正确答案:C
为了描述控制进程的运行,系统中存放进程的管理和控制信息的数据结构称为进程控制块(PCB Process Control Block),它是进程管理和控制的最重要的数据结构,每一个进程均有一个PCB,在创建进程时,建立PCB,伴随进程运行的全过程,直到进程撤消而撤消。
PCB一般包括:
1.程序ID(PID、进程句柄):它是唯一的,一个进程都必须对应一个PID。PID一般是整形数字。
2.特征信息:一般分系统进程、用户进程、或者内核进程等。
3.进程状态:运行,就绪,阳塞,表示进程现的运行情况。
4.优先级:表示获得CPU控制权的优先级大小。
5.通信信息:讲程之间的通信关系的反映,中干操作系统会提供通信信道。
6,现场保护区:保护阳塞的进程用。
7.资源需求、分配控制信息。
8.进程实体信息,指明程序路径和名称,进程数据在物理内存还是在交换分区(分页)中。
9.其他信息:工作单位,工作区,文件信息等。
9、在()情况下,系统出现死锁。
A 若干进程因竞争资源而无休止地相互等待对方释放已占有的资源
B 有多个封锁的进程同时存在
C 计算机系统发生重大故障
D 资源数大大小于进程数或进程同时申请的资源数大大超过资源总数
正确答案: A
死锁是两个进程或者线程都在相互等待对方释放资源,互不相让,就造成了死锁。
10、当系统发生抖动(thrashing)时,可以采取的有效措施是( )。
Ⅰ.撤销部分进程 Ⅱ.增加磁盘交换区的容量 Ⅲ.提高用户进程的优先级
A 仅Ⅰ
B 仅Ⅱ
C 仅Ⅲ
D 仅Ⅰ, Ⅱ
正确答案: A
在具有对换功能的操作系统中,通常把外存分为文件区和对换区。前者用于存放文件,后者用于存放从内存换出的进程。
抖动现象是指刚刚被换出的页很快又要被访问。为此,又要换出其他页,而该页又快被访问,如此频繁地置换页面,以致大部分时间都花在页面置换上。
I,撤销部分进程可以减少所要用到的页面数,防止抖动。
Ⅱ和Ⅲ,对换区大小和进程优先级都与抖动无关。


二、编程题

    🔥年会抽奖

     年会抽奖__牛客网

 【题目解析】:
错排问题举例:
用A、B、C……表示写着n位友人名字的信封,a、b、c……表示n份相应的写好的信纸。把错装的总数为记作D(n)。假设把a错装进B里了,包含着这个错误的一切错装法分两类:

b装入A里,这时每种错装的其余部分都与A、B、a、b无关,应有D(n-2)种错装法。

b装入A、B之外的一个信封,这时的装信工作实际是把(除a之外的)n-1份信纸b、c……装入(除B以外的)n-1个信封A、C……,显然这时装错的方法有D(n-1)种。
总之在a装入B的错误之下,共有错装法D(n-2)+D(n-1)种。

a装入C,装入D……的n-2种错误之下,同样都有D(n-1)+D(n-2)种错装法,因此D(n)=(n-1)[D(n-1)+D(n-2)]
D(n) = (n-1) [D(n-2) + D(n-1)]
特殊地,D(1) = 0, D(2) = 1.

【解题思路】:
错排的递推公式是:D(n) = (n - 1) [D(n - 2) + D(n - 1)],也就是第n项为n - 1倍的前两项和。通过这个递推公式可以得到在总数为n的时候,错排的可能性一共有多少种。那么要求错排的概率,我们还需要另一个数值,就是当总数为n的时候,所有的排列组合一共有多少种,那么根据排列组合,肯定是使用的公式来求,也就是n的阶乘。所以结果很简单,就是用公式求出第n项的错排种类,和n的阶乘,然后两者一除,就是概率了。

import java.util.*;
public class Main{
    public static void main(String[] args){
        long d[]=new long[21];// 错排数据
        d[0]=d[1]=0;
        d[2]=1;
        long f[]=new long[21];// 阶乘
        f[0]=f[1]=1;
        f[2]=2;
        // 算N错排数据和阶乘
        for(int i = 3; i <= 20; ++i){
            d[i] = (i-1) * (d[i-1] + d[i-2]);
            f[i] = i * f[i-1];
        }
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int n = sc.nextInt();
            System.out.printf("%.2f%%\n", 100.0*d[n]/f[n]);
        }
    }
}

🔥抄送列表

抄送列表__牛客网

 【解题思路】:

  1. 通过Scanner的nextLine()方法获取第一行中的名字
  2. 解析出第一行中的所有名字保存在HashSet中
  3. 获取第二行中的名字,检测该名字是否存在,并按照题目的要求进行输出
    import java.util.*;
    public class Main{
        public static void main(String[] args){
            // 循环处理每组测试用例
            Scanner sc = new Scanner(System.in);
            while(sc.hasNext()){
            // 接收第一行的所有名字,并对名字进行分割,将分割好的名字放在Set
                String name = sc.nextLine();
                int i = 0;
                int end = 0;
                Set<String> s = new HashSet<>();
                while(i < name.length()){
                    if('\"' == name.charAt(i)){
                // 名字包含在""中
                        end = name.indexOf('\"', i + 1);
                        s.add(name.substring(i+1, end)); // 参数1:起始位置 参数2:表示末尾位置---注
                //意:该位置的字符不会被截取到,截取到该位置之前的字符
                        i = end + 2;
                    }else{
                // 名字没有包含在""中
                        end = name.indexOf(',', i+1);
                        if(-1 == end){
                // 现在要分割的名字是最后一个名字
                            s.add(name.substring(i, name.length()));
                            break;
                        }
                        name.substring(i, end);
                        i = end + 1;
                     }
                  }
                // 获取第二行的名字并检测该名字是否在Set中存在
                name = sc.nextLine();
                if(s.contains(name)){
                    System.out.println("Ignore");
                }else{
                    System.out.println("Important!");
                }
            }
        }
    }
    

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

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

相关文章

六、FM1288调试方案-调试过程及细节

本篇文章,主要讲述实际调试操作:具体到需要调节哪些寄存器,调节完后,会有什么样的变化。但是整体效果不能达到我们期望的绝对感觉,所以我先把我们调试的结果放在前面,如果觉得不理想,也可以不看后面的内容了。 文章目录 1. 调试准备1.1 建立与FM1288芯片通信1.2 Uart结…

IPv6有哪些优势?

现有的互联网是在IPv4协议的基础上运行的。IPv6是下一版本的互联网协议&#xff0c;也可以说是下一代互联网的协议&#xff0c;它的提出最初是因为随着互联网的迅速发展&#xff0c;IPv4定义的有限地址空间将被耗尽&#xff0c;而地址空间的不足必将妨碍互联网的进一步发展。 为…

1.100ASK-V853-PRO编译烧写

100ASK_V853-PRO 环境配置及编译烧写 0.前言 本章主要介绍关于100ASK_V853-PRO开发板的Tina SDK包的下载和编译打包生成镜像&#xff0c;并将镜像烧录到100ASK_V853-PRO开发板上。在进行100ASK_V853-PRO开发板的环境配置前需要获取配置虚拟机系统&#xff0c;可以参考&#x…

【HA】HomeAssistant 添加 小米温湿度计2代

本方法只是被动的获取小米温湿度计广播出的温度和湿度数据&#xff0c;并没有其他更多功能。 0. 本人配置 树莓派3B Debian 11 (Bullseye) 64 位 Supervisor 2023.05.dev0901 HomeAssistant 已安装 HACS 1. 安装 打开侧边栏中的HACS&#xff0c;点击“集成” 右下角找到“…

ACM - DP - 提高2 (状态机 + 状态压缩 + 区间 + 树形 + 数位 + 单调队列优化 + 斜率优化)

DP 类型题二 【跳转DP 类型题一 &#xff08;模型&#xff1a;数字三角形最长上升子序列背包】一、状态机模型1、AcWing 1057. 股票买卖 IV &#xff1a;两个状态转换2、AcWing 1058. 股票买卖 V &#xff1a;三个状态转换3、AcWing 1052. 设计密码 &#xff1a;T 维状态转换 …

IDEA创建接口类和接口实现类

IDEA创建接口类和接口实现类 IDEA创建接口类IDEA创建接口实现类 以创建Dao包下的代码为例。 IDEA创建接口类 选中要创建接口类的package&#xff0c;右键菜单依次选择New——Java Class。 在弹出的界面中&#xff0c;将创建的对象类型由Class改为Interface&#xff0c;如下图…

Jmeter接口测试流程详解

1、jmeter简介 Jmeter是由Apache公司开发的java开源项目&#xff0c;所以想要使用它必须基于java环境才可以&#xff1b; Jmeter采用多线程&#xff0c;允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。 2、jmeter安装 首先需要安装jdk&#xff08;最好是最…

“锻造”微生物组以帮助我们长寿和繁荣

谷禾健康 衰老通常伴随着心血管、神经和免疫系统等一系列疾病的风险增加。 虽然在理解微生物组导致与衰老相关的个别疾病的细胞和分子机制方面取得了显著进展&#xff0c;我们在之前的文章也有这方面的阐述&#xff1a; 肠道微生物群与健康长寿 肠道微生物群的老化及其对宿主免…

二、Linux入门| shell运行原理及Linux权限的理解

一、Linux 软件包管理器 - yum centos7的安装方式 1、源码安装&#xff08;较复杂&#xff09; 2、rpm包安装&#xff08;较复杂&#xff0c;未解决依赖关系&#xff09; 3、yum安装&#xff08;不用编译源码&#xff0c;不用解决软件的依赖关系&#xff0c;门槛较低&#xff…

LeetCode4. 寻找两个正序数组的中位数

写在前面&#xff1a; 题目链接&#xff1a;LeetCode4. 寻找两个正序数组的中位数 编程语言&#xff1a;C 题目难度&#xff1a;困难 一、题目描述 给定两个大小分别为 m 和 n 的正序&#xff08;从小到大&#xff09;数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中…

英文论文润色哪家好用比较好,有值得推荐的吗

英文论文润色 推荐 英文论文润色对于写作者来说是一项十分重要的任务&#xff0c;它可以帮助我们修改文章中的语法、标点和排版等问题&#xff0c;使论文更加准确和易读。在众多的英文润色软件中&#xff0c;147chatgpt改写润色软件是一款值得推荐的全自动批量图文润色、自动纠…

SSM框架学习-核心容器小结

1. 容器相关 Spring核心容器中的容器是指容器对象&#xff0c;用于管理和装配Bean。它主要包含以下四个容器&#xff1a; BeanFactory容器&#xff1a;是最简单的容器&#xff0c;提供实例化、配置和管理对象的基本功能&#xff0c;但不提供AOP、事务管理等高级功能。 Applica…

三分钟,带你了解零代码开发

企业数字化转型如火如荼的进行&#xff0c;五花八门的零代码、低代码工具正如雨后春笋一般出现&#xff0c;那么零代码开发是什么&#xff1f; 阅读本文您将了解&#xff1a; 零代码开发是什么零代码与企业数字化转型零代码开发带来的效益简道云零代码平台应用实例 一、零代…

3ds Max云渲染有多快,3ds Max云渲染怎么用?

本地渲染效果图和动画3D项目是一个非常耗时的过程&#xff0c;当在场景中使用未优化的几何体或在最终渲染中使用大量多边形模型时&#xff0c;诸如此类的变量最终会增加渲染项目所需的时间和处理器能力。随着提供的渲染服务的云渲染平台出现&#xff0c;越来越多动画师、艺术家…

【ChirpStack 】如何获取 JWT TOKEN并利用 API 下发数据?

LoRa App Server 提供了两类 API 接口&#xff0c;其中 RESTful JSON API 提供了一个 API console&#xff0c;在AS地址的基础上使用 /api 即可访问&#xff0c;罗列了 API 端点和文档介绍&#xff0c;测试起来非常方便。 本文主要介绍 如何使用 chirpstack 的API 进行测试以及…

日常问题----如和解决跨域

一、什么是跨域 跨域不是问题&#xff0c;是一种安全机制。 同源策略是浏览器一个重要的安全策略&#xff0c;一个url由三部分组成:协议&#xff0c;域名&#xff08;ip地址&#xff09;&#xff0c;端口。所谓的同源就是指两个域有相同的协议&#xff08;protocol&#xff09…

7种常见的生产级负载均衡算法

准备测试数据 package com.example.demo.balance;import java.util.*;/*** author liwenchao*/ public class ServerIps {public static final List<String> LIST Arrays.asList("192.168.0.1","192.168.0.2","192.168.0.3","192.1…

聊聊那些年我们实现java AOP几种常见套路

前言 有一定开发经验的同学对AOP应该很了解吧&#xff0c;如果不了解&#xff0c;可以先查看如下文章进行科普一下https://baike.baidu.com/item/AOP/1332219?fraladdin&#xff0c;再来阅读本文。 示例前置准备 注&#xff1a; 本示例基于springboot进行演示 1、在项目pom…

将ABC文件 通过BlendShape导出为FBX>

将ABC文件 通过BlendShape导出为FBX 一、应用场景&#xff1a; 此项目为高中化学实验案例&#xff0c;为实现保鲜膜 模拟动画&#xff0c;这里通过使用MarvelousDesigner来结算出动画效果&#xff0c;导出ABC格式带动画后&#xff0c;导入到maya当中&#xff0c;这里因为需要…

SSM框架学习-注解开发定义bean

注解开发定义的bean和xml文件定义的bean有以下区别&#xff1a; 配置方式不同&#xff1a;注解方式是直接在Java类中使用注解来定义bean&#xff0c;而XML方式则是在XML文件中配置bean。 配置信息不同&#xff1a;注解方式在注解内配置bean的属性&#xff0c;如Value&#xff…