• Java面向对象编程


    OSI 分层模型中,把传输的比特流划分为帧,是哪一层的功能()

    A. 物理层

    B. 网络层

    C. 数据链路层

    D. 传输层

    答案:C

    下面关于源端口地址和目标端口地址的描述中,正确的是( )

    A. 在TCP/UDP传输段中,源端口地址和目的端口地址是不能相同的

    B. 在TCP/UDP传输段中,源端口地址和目的端口地址必须是相同的

    C. 在TCP/UDP传输段中,源端口地址和目的端口地址是可以相同的

    D. 以上描述均不正确

    答案:A

    网段地址 154.27.0.0 的网络。若不做子网划分,能支持()台主机

    A. 254

    B. 1024

    C. 65534

    D. 16777206

    答案:C

    SNMP 使用 UDP 161 和 162 端口,则该协议属于 TCP/IP 模型中的()

    A. 网络层

    B. 数据链路层

    C. 应用层

    D. 传输层

    答案:C

    HTTP 协议中,状态码 500 的意思为()

    A. 重定向

    B. 访问被拒绝

    C. 未找到请求的内容

    D. 服务器内部有错误

    答案:D

    主机 A 向主机 B 连续发送了两个 TCP 报文段,其序号分包是 70 和 100 ,如果 A 发送的第一个报文段丢失了,但第二个报文段达到了 B , B 在第二个报文段到达后向 A 发送确认,那么这个确认号是多少?

    A. 100

    B. 101

    C. 70

    D. 71

    答案:C

    每个 IP 地址都可以有一个主机名,通过主机名得到该主机对应 ip 地址的过程叫()

    A. ip地址解析

    B. 域名解析

    C. 域名编译

    D. ip地址编译

    答案:B

    以下说法不正确的是()

    A. HTTP是一种请求/响应式的协议

    B. HTTP请求消息中Accept表示浏览器可接受的MIME类型

    C. HTTP请求消息中Accept-Encoding表示浏览器能够进行解码的数据编码方式

    D. HTTP请求消息中Css表示初始URL中的主机和端口

    答案:D

    关于计算机网络,下列描述当中,正确的是()

    A. 在同一信道上同一时刻,可进行双向数据传送的通信方式是半双工

    B. TCP协议是无连接的;UDP协议是面向连接的

    C. 假设一个主机的ip地址为192.168.8.123,而子网掩码为255.255.255.248,那么该主机的网络号是192.168.8.120

    D. 计算机网络中的OSI结构分别是:物理层,数据链路层,传输层,会话层,表示层,应用层 答案:C

    下列关于 http 状态码描述正确的是()

    A. 404读取浏览器缓存,502错误网关

    B. 404找不到资源,403服务器错误

    C. 500服务器错误,304读取浏览器缓存

    D. 304服务器错误,200请求成功

    答案:C

    数据库连接池
    题目描述:Web系统通常会频繁地访问数据库,如果每次访问都创建新连接,性能会很差。为了提高性能,架构师决定复用已经创建的连接。当收到请求,并且连接池中没 有剩余可用的连接时,系统会创建一个新连接,当请求处理完成时该连接会被放入连接池中,供后续请求使用。 
    现在提供你处理请求的日志,请你分析一下连接池最多需要创建多少个连接。
    输入描述:输入包含多组数据,每组数据第一行包含一个正整数n(1≤n≤1000),表示请求的数量。 
    紧接着n行,每行包含一个请求编号id(A、B、C……、Z)和操作(connect或disconnect)。 
    输出描述:对应每一组数据,输出连接池最多需要创建多少个连接。
    
     
    
    public class Main59 {
    
        //数据库连接池
    
        public static void main(String[] args) {
    
            Scanner scanner=new Scanner(System.in);
    
            while (scanner.hasNext()){
    
                int n=scanner.nextInt();
    
                String id,op;
    
                int maxCon=0;
    
                Set<String> s=new HashSet<>();
    
                for (int i = 0; i < n; i++) {
    
                    id=scanner.next();
    
                    op=scanner.next();
    
    
    
                    if (op.equals("connect")){
    
                        s.add(id);
    
                    }else {
    
                        s.remove(id);
    
                    }
    
                    maxCon=Math.max(maxCon,s.size());
    
                }
    
                System.out.println(maxCon);
    
            }
    
        }
    
    }
     
     
    Mkdir
    题目描述:工作中,每当要部署一台新机器的时候,就意味着有一堆目录需要创建。例如要创建目录“/usr/local/bin”,就需要此次创建“/usr”、“/usr/local”以 及“/usr/local/bin”。好在,Linux下mkdir提供了强大的“-p”选项,只要一条命令“mkdir -p /usr/local/bin”就能自动创建需要的上级目录。 现在给你一些需要创建的文件夹目录,请你帮忙生成相应的“mkdir -p”命令。 
    输入描述:输入包含多组数据。 
    每组数据第一行为一个正整数n(1≤n≤1024)。 
    紧接着n行,每行包含一个待创建的目录名,目录名仅由数字和字母组成,长度不超过200个字符。 
    输出描述:对应每一组数据,输出相应的、按照字典顺序排序的“mkdir -p”命令。 
    每组数据之后输出一个空行作为分隔。
    
     
    
    public class Main60 {
    
        //Mkdir
    
        public static void main(String[] args) {
    
            //循环接收多组测试用列
    
            Scanner scanner = new Scanner(System.in);
    
            while (scanner.hasNext()) {
    
                //接收一组测试用列
    
                int n = scanner.nextInt();
    
                String[] path = new String[n];
    
                for (int i = 0; i < n; i++) {
    
                    path[i] = scanner.next();
    
                }
    
                //按照字典的方式对所有的目录进行排序
    
                Arrays.sort(path);
    
    
    
                //过滤目录:相同目录 || 子目录
    
                //伪删法:标记
    
                boolean[] flag = new boolean[n];
    
                for (int i = 0; i < n - 1; ++i) {
    
                    //相同目录
    
                    if (path[i].equals(path[i + 1])) {
    
                        flag[i] = true;
    
                    } else if (path[i].length() < path[i + 1].length() &&
    
                            path[i + 1].contains(path[i]) && path[i + 1].charAt(path[i].length()) == '/') {
    
                        flag[i] = true;
    
                    }
    
                }
    
                //拼接要输出的结果
    
                for (int i = 0; i < n; i++) {
    
                    if (!flag[i]) {
    
                        System.out.println("mkdir -p " + path[i]);
    
                    }
    
                }
    
                System.out.println();
    
            }
    
        }
    
    }
     
     
    方法2:
    //mkdir
    
    public class Main {
    
        public static void main(String[] args) {
    
            Scanner sc = new Scanner(System.in);
    
            while (sc.hasNext()) {
    
                int n = sc.nextInt();
    
                String[] arr = new String[n];
    
                for (int i = 0; i < arr.length; i++) {
    
                    arr[i] = sc.next();
    
                }
    
                Arrays.sort(arr);
    
                List<String> res = new ArrayList<>();
    
                for (int i = 1; i < arr.length; i++) {
    
                    if (!arr[i].startsWith(arr[i - 1] + "/")) res.add(arr[i - 1]);
    
                }
    
                res.add(arr[n - 1]);
    
                for (String s : res) {
    
                    System.out.println("mkdir -p " + s);
    
                }
    
                System.out.println();
    
            }
    
        }
    
    }
  • 相关阅读:
    Python数据容器的总结
    基于改进麻雀算法优化变分模态分解(IAMSSA—VMD)的信号分解方法
    FreeRTOS的学习(五)—— 信号量之计数信号量
    手记系列之七 ----- 分享Linux使用经验
    剑指office--字符串
    GRU 关键词提取实例
    golang中的网络轮询器netpoll源码解析
    找单身狗1
    npm ERR! code CERT_HAS_EXPIRED:解决证书过期问题
    docker虚拟网桥和业务网段冲突处理
  • 原文地址:https://blog.csdn.net/weixin_64308540/article/details/132962703