Java面向对象编程

2023-11-18

主机甲和乙已建立了TCP连接,甲始终以MSS=1KB大小的段发送数据,并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB的确认段。若甲在t时刻发生超时时拥塞窗口为8KB,则从t时刻起,不再发生超时的情况下,经过10个RTT后,甲的发送窗口是()

A.10KB

B.12KB

C.14KB

D.15KB

答案:A

某主机的IP 地址为 180.80.77.55,子网掩码为 255.255.252.0。若该主机向其所在子网发送广播分组,则目的地址可以是()

A.180.80.76.0

B.180.80.76.255

C.180.80.77.255

D.180.80.79.255

答案:D

ARP 协议的功能是()

A.根据 IP 地址查询 MAC 地址

B.根据 MAC 地址查询 IP 地址

C.根据域名查询 IP 地址

D.根据 IP 地址查询域名

答案:A

下列关于IP 路由器功能的描述中,正确的是()
Ⅰ. 运行路由协议,设置路由表
Ⅱ. 监测到拥塞时,合理丢弃 IP 分组
Ⅲ. 对收到的 IP 分组头进行差错校验,确保传输的 IP 分组不丢失
Ⅳ、 根据收到的 IP 分组的目的 IP 地址,将其转发到合适的输出线路上

A.仅Ⅲ、 Ⅳ

B.仅Ⅰ、 Ⅱ、 Ⅲ

C.仅Ⅰ、 Ⅱ、 Ⅳ

D.Ⅰ、 Ⅱ、 Ⅲ、 Ⅳ

答案:C

以太网的MAC 协议提供的是()

A.无连接不可靠服务

B.无连接可靠服务

C.有连接不可靠服务

D.有连接可靠服务

答案:A

在TCP/IP体系结构中,直接为 ICMP 提供服务的协议是()

A.PPP

B.IP

C.UDP

D.TCP

答案:B

主机甲向主机乙发送一个(SYN=1, seq=11220)的 TCP 段,期望与主机乙建立 TCP 连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确的 TCP 段可能是()

A.( SYN=0, ACK=0, seq=11221, ack=11221)

B.( SYN=1, ACK=1, seq=11220, ack=11220)

C.( SYN=1, ACK=1, seq=11221, ack=11221)

D.( SYN=0, ACK=0, seq=11220, ack=11220)

答案:C

TCP/IP 参考模型的网络层提供的是()

A.无连接不可靠的数据报服务

B.无连接可靠的数据报服务

C.有连接不可靠的虚电路服务

D.有连接可靠的虚电路服务

答案:A

主机甲和主机乙之间建立一个TCP连接,TCP最大段长度为1000字节,若主机甲的当前拥塞窗口为4000字节,在主机甲向主机乙连续发送 两 个最大段后,成功收到主机乙发送的第一 个 段的确认段,确认段中通告的 接收 窗口大小为2000字节,则此时主机甲还可以向主机乙发送的最大字节数是()

A.1000

B.2000

C.3000

D.4000

答案:A

某网络的IP地址空间为192.168.5.0/24 , 采用定长子网划分,子网掩码为255.255.255.248,则该网络的最大子网个数 、每个子网内的最大可分配地址个数()

A.32,8

B.32,6

C.8,32

D.8,30

答案:B

五子棋
题目描述: NowCoder最近爱上了五子棋,现在给你一个棋局,请你帮忙判断其中有没有五子连珠(超过五颗也算)。
输入描述:输入有多组数据,每组数据为一张20x20的棋盘。
其中黑子用“*"表示,白子用“+"表示,空白位置用“∵"表示。
输出描述:如果棋盘上存在五子连珠(无论哪种颜色的棋子),输入"Yes”,否则输出"No”。

public class Main66 {

    //五子棋

    final public static int N=20;

    public static int count(String[] table,int x,int y,char ch){

        //(i,j)位置的4个大方向取检测,统计相同颜色棋子的最大个数

        int[][][] direct={

                {{0,-1},{0,1}}, //横向: 左 右

                {{-1,0},{1,0}}, //竖向: 上 下

                {{-1,-1},{1,1}}, //左上到右下: 左上 右下

                {{-1,1},{1,-1}}, //有伤到左下: 右上 左下

        };



        int result=0;

        for (int i = 0; i < 4; ++i) {

            //统计单个方向相同的棋子的个数

            int c=0;

            for (int j = 0; j < 2; ++j) {

                //将一个大方向分成两个小方向来进行遍历

                int nx=x;

                int ny=y;

                //超一个方向去统计相同颜色棋子的个数

                while (nx >=0 && nx <N && ny>=0 && ny<N &&  
table[nx].charAt(ny)  ==ch){

                    c++;

                    nx=nx+direct[i][j][0];

                    ny=ny+direct[i][j][1];

                }

            }

            result = c > result ? c : result;

        }

        return result-1;

    }



    public static boolean sover(String[] table){

        //对棋谱中的每个位置进行检测,如果该位置是棋子,就统计该棋子周围是否存在五子连珠

        for (int i = 0; i < N; ++i) {

            for (int j = 0; j < N; ++j) {

                if (table[i].charAt(j) =='*' ||table[i].charAt(j)=='+'){

                    //(i,j)位置的4个大方向取检测,统计相同颜色棋子的最大个数

                    if (count(table,i,j,table[i].charAt(j)) >=5){

                        return true;

                    }



                }

            }

        }

        return false;

    }

    public static void main(String[] args) {

        Scanner scanner=new Scanner(System.in);

        while (scanner.hasNext()){

            //接收棋谱

            String[] table=new String[N];

            for (int i = 0; i < N; ++i) {

                table[i]=scanner.next();

            }

            //统计是否存在连珠五子棋

            System.out.println(sover(table)?"Yes" :"No");

        }

    }

}
Emacs计算器
题目描述: Emacs号称神的编辑器,它自带了一个计算器。与其他计算器不同,它是基于后缀表达式的,即运算符在操作数的后面。例如23+等价于中缀表达式的"2+ 3”"。
请你实现一个后缀表达式的计算器。
输入描述:输入包含多组数据。
每组数据包括两行:第一行是一个正整数n(3Sn<50);紧接着第二行包含n个由数值和运算符组成的列表。
“+-*/"分别为加减乘除四则运算,其中除法为整除,即“5/3=1”。
输出描述:对应每一组数据,输出它们的运算结果。

 

public class Main67 {

    //Emacs计算器

    public static void main(String[] args) {

        Scanner scanner=new Scanner(System.in);

        while (scanner.hasNext()){

            int n=scanner.nextInt();

            String str;

            Stack<Integer> s = new Stack<>();

            for (int i = 0; i < n; ++i) {

                str=scanner.next();

                char ch=str.charAt(0);

                if (ch>='0' && ch<='9'){

                    //遇到数字

                    s.add(Integer.parseInt(str));

                }else {

                    //运算符

                    int right=s.pop();

                    int left=s.pop();



                    switch (ch){

                        case '+':

                            s.add(left+right);

                            break;

                        case '-':

                            s.add(left-right);

                            break;

                        case '*':

                            s.add(left*right);

                            break;

                        case '/':

                            s.add(left/right);

                            break;

                    }

                }

            }

            System.out.println(s.pop());

        }

    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java面向对象编程 的相关文章

  • Linux 软件安装以及管理

    本篇主要记录常用的软件安装和管理方式 主要是 yum rpm dnf apt pip 大致都是一样的 主要是部分软件提供了解决依赖的功能 内容不包括源码安装 源码安装情况相对比较复杂 后续有时间再补充 约定 案例所用模板软件均为 pytho
  • nohup - 后台执行

    nohup no hang up 语法 nohup Command Arg 使用示例 nohup python a py 日志将被保留在 当前文件夹下的 nohup out 将日志放到文件 不输出到终端 echo hello gt 1 tx
  • 服务器集群是如何提高计算性能的?

    服务器集群是一种将多台服务器连接起来协同工作的技术 通过集群配置 可以提高计算性能 可靠性和可扩展性 以下是服务器集群如何提高计算性能的详细解释 一 并行处理能力 服务器集群的核心优势在于其并行处理能力 通过将多个服务器组成一个集群 可以将
  • 如何解读服务器的配置和架构?

    在当今数字化时代 服务器作为企业或组织的重要基础设施 其配置和架构对于保障业务的稳定运行至关重要 如何解读服务器的配置和架构 成为了一个备受关注的话题 本文将围绕服务器配置和架构的解读进行深入探讨 帮助读者更好地理解服务器的性能 扩展性和安
  • 【CTF必看】从零开始的CTF学习路线(超详细),让你从小白进阶成大神!

    最近很多朋友在后台私信我 问应该怎么入门CTF 个人认为入门CTF之前大家应该先了解到底 什么是CTF 而你 学CTF的目的又到底是什么 其次便是最好具备相应的编程能力 若是完全不具备这些能力极有可能直接被劝退 毕竟比赛的时候动不动写个脚本
  • 线程安全(中)--彻底搞懂synchronized(从偏向锁到重量级锁)

    接触过线程安全的同学想必都使用过synchronized这个关键字 在java同步代码快中 synchronized的使用方式无非有两个 通过对一个对象进行加锁来实现同步 如下面代码 synchronized lockObject 代码 对
  • 用户数据中的幸存者偏差

    幸存者偏差 Survivorship bias 是一种常见的逻辑谬误 意思是没有考虑到筛选的过程 忽略了被筛选掉的关键信息 只看到经过筛选后而产生的结果 先讲个故事 二战时 无奈德国空防强大 盟军战机损毁严重 于是军方便找来科学家统计飞机受
  • 白帽子如何快速挖到人生的第一个漏洞 | 购物站点挖掘商城漏洞

    本文针对人群 很多朋友们接触安全都是通过书籍 网上流传的PDF 亦或是通过论坛里的文章 但可能经过了这样一段时间的学习 了解了一些常见漏洞的原理之后 对于漏洞挖掘还不是很清楚 甚至不明白如何下手 可能你通过 sql labs 初步掌握了sq
  • 2024年金三银四网络安全考试试题

    2023年金三银四网络安全考试试题 1 关于数据使用说法错误的是 A 在知识分享 案例中如涉及客户网络数据 应取敏感化 不得直接使用 B 在公开场合 公共媒体等谈论 传播或发布客户网络中的数据 需获得客户书面授权或取敏感化 公开渠道获得的除
  • 「网络安全渗透」如果你还不懂CSRF?这一篇让你彻底掌握

    1 什么是 CSRF 面试的时候的著名问题 谈一谈你对 CSRF 与 SSRF 区别的看法 这个问题 如果我们用非常通俗的语言讲的话 CSRF 更像是钓鱼的举动 是用户攻击用户的 而对于 SSRF 来说 是由服务器发出请求 用户 日 服务器
  • 远程控制软件安全吗?一文看懂ToDesk、RayLink、TeamViewer、Splashtop相关安全机制_raylink todesk

    目录 一 前言 二 远程控制中的安全威胁 三 国内外远控软件安全机制 ToDesk RayLink Teamviewer Splashtop 四 安全远控预防 一 前言 近期 远程控制话题再一次引起关注 据相关新闻报道 不少不法分子利用远程
  • 如何使用Imagewheel搭建一个简单的的私人图床无公网ip也能访问

    文章目录 1 前言 2 Imagewheel网站搭建 2 1 Imagewheel下载和安装 2 2 Imagewheel网页测试 2 3 cpolar的安装和注册 3 本地网页发布 3 1 Cpolar临时数据隧道
  • 基于java的物业管理系统设计与实现

    基于java的物业管理系统设计与实现 I 引言 A 研究背景和动机 物业管理系统是指对物业进行管理和服务的系统 该系统需要具备对物业信息 人员信息 财务信息等进行管理的能力 基于Java的物业管理系统设计与实现的研究背景和动机主要体现在以下
  • 网络安全(黑客)自学启蒙

    一 什么是网络安全 网络安全是一种综合性的概念 涵盖了保护计算机系统 网络基础设施和数据免受未经授权的访问 攻击 损害或盗窃的一系列措施和技术 经常听到的 红队 渗透测试 等就是研究攻击技术 而 蓝队 安全运营 安全运维 则研究防御技术 作
  • 揭秘网络世界的幕后密码——Wireshark网络协议分析软件

    在我们日常生活中 计算机和互联网已经成为不可或缺的一部分 然而 很少有人真正了解网络背后复杂的工作原理和通信协议 幸运的是 有一款强大而实用的软件 Wireshark 可以帮助我们深入了解网络世界的幕后密码 Wireshark是一款免费的网
  • 一台java服务器可以跑多少个线程?

    一台java服务器可以跑多少个线程 一台java服务器能跑多少个线程 这个问题来自一次线上报警如下图 超过了我们的配置阈值 打出jstack文件 通过IBM Thread and Monitor Dump Analyzer for Java
  • 内网安全:隧道技术详解

    目录 隧道技术 反向连接技术 反向连接实验所用网络拓扑图及说明 网络说明 防火墙限制说明 实验前提说明 实战一 CS反向连接上线 拿下Win2008 一 使用转发代理上线创建监听器 二 上传后门执行上线 隧道技术 SMB协议 SMB协议介绍
  • 静态综合实验

    1 IP地址划分 192 168 1 0 27 用于主干拆分 192 168 1 32 27 用于用户拆分 192 168 1 64 27 用于用户拆分 192 168 1 96 27 用于用户拆分 192 168 1 128 27 用于用
  • 高防服务器什么意思

    高防服务器什么意思 为什么要用高防服务器 小编为您整理发布高防服务器什么意思的解读 高防服务器是指具备较高防御能力的服务器 能够抵御DDoS CC等网络攻击 高防服务器通常用于保护游戏 APP 金融 电商等业务 这些领域因为其业务特性 容易
  • 【安全】网络安全态势感知

    文章目录 一 态势感知简介 1 概念 2 形象举例 3 应具备的能力 二 为什么要态势感知 为什么网络安全态势感知很重要 三 态势感知系统的功能 四 如何评估态势感知的建设结果 五 什么是态势感知的三个层级 四 业界的态势感知产品 1 安全

随机推荐

  • CUBEMX+HAL库实现STM32串口(不定长度)收发

    CUBEMX HAL库实现STM32串口接收 不定长度 并发送 首先新建一个CUBEMX工程 选择你自己开发板的芯片型号 设置时钟和串口 设置时钟为72MHZ 设置串口中断 点击小齿轮生成KEIL5的工程 设置工程名称及存放位置 点击Ope
  • Calendar常用的方法的返回结果 获取指定时间点

    Calendar常用的方法的返回结果 public class CalendarText Calendar calendar null Before public void test calendar Calendar getInstanc
  • 和氟西汀类似的备注_氟西汀备注是什么意思 和氟西汀差不多的备注

    氟西汀 这是一个药物名字 是抗郁抑症的药物 这个药物名字也经常用来当做备注名使用 氟西汀备注是什么意思 和氟西汀差不多的备注有哪些 氟西汀备注是什么意思 将对方备注成氟西汀 表示的是对方是驱散自己心中阴霾的阳光 对方是自己活下去的动力 是快
  • Difference between MBCS and UTF-8 on Windows

    I am reading about the charater set and encodings on Windows I noticed that there are two compiler flags in Visual Studi
  • 基于Python Django的公务员考试信息管理系统

    文章目录 1 简介 2 技术栈 3 功能分析 4 功能具体设计 4 1 软件功能模块设计 4 2数据库设计与实现 4 2 1概念模型设计 4 2 2数据库逻辑结构设计 5系统详细设计 5 1系统功能模块 5 2管理员功能模块 六 源码咨询
  • tcpdump抓包对性能的影响

    一直以来 提到这个话题 大家更多的关注的是tcpdump抓包本身的性能 比如能不能应付几十万的pps 能否在万兆网络上自运自如 我们现在知道 这些问题的答案都是否定的 即 不能 因此你应该去关注netmap高性能抓包方案以及DPDK这样的东
  • Linux上配置Jupyter Notebook远程访问

    本身自己机器上安装了太多东西 有点慢 本来也喜欢所有的东西搬到服务上 所以如果能安装一个远程的Jupyter 服务器 用起来就会很方便 记录下自己的安装步骤 1 安装ipython jupyter pip install ipython p
  • 未来简史--读书语句摘录及感悟

    文章目录 摘录 个人感想 摘录 18世纪末的英国哲学家边沁主张 所谓至善就是 为最多人带来最大的快乐 并认为国家 市场和科学界唯一值得追寻的目标就是提升全球的快乐 政治家应该追求和平 商人应该促进繁荣 学者应该研究自然 但不是为了荣耀什么国
  • 在tomcat中发布项目时,用IP地址不能访问项目而用localhost时可以访问成功

    最近在开发项目中 遇到的一个问题是 在 tomcat中发布一个web项目 但是发布成功后 只能用http localhost 8080 fm访问项目 不能用 http 127 0 0 1 8080 fm访问项目 也不能用本地的IP地址访问
  • Request method ‘POST‘ not supported错误和解决方法

    最近使用VUE js开发中遇到了错误Request method POST not supported 字面意思上看是因为前后端没有统一使用POST方法 但是我在本地仔细检查了前端调用方法和后端处理方法 均没有发现有这个问题 最后我发现 问
  • Memcached Redis Membase性能测试对比分析

    最近在在调研分布式缓存 希望后面能够当前改进项目中缓存的使用 这个测试结果可能出乎大家的意料之外哦 测试结果对比分析 单次读写访问Memcached最快 Redis居中 Membase最慢 单次读写Membase和Redis速度比较接近 M
  • 计算机考试如何截屏,教你6种电脑截屏的小技巧-电脑怎么截图

    电脑截屏是我们经常要用到的技能 不仅操作简单而且非常实用 方法也有很多 下面小编总结了6种截屏技巧 供大家选择 分别是以下6种 1 搜狗输入法 2 浏览器 3 截屏软件 4 QQ ctrl ait A 和微信 alt A 5 附件截图工具
  • win10系统下安装Kafka 的详细步骤

    Win10 系统下要使用Kafka需要经过以下三个步骤 1 安装JDK 需要安装依赖java JDK 2 安装zookeeper 资源协调 分配管理 3 安装Kafka 一 安装 Java SE Development Kit 13 0 1
  • 【原创】ESXI6.7+ikuai爱快搭建软路由(非常详细)

    ESXI安装过程我就直接跳过了 这个网上教程多得是 先介绍一下我的测试环境 一台测试电脑CPU G5400 内存32G DDR4 硬盘960G的铠侠 SATA3接口的SSD 网卡 自带的瑞昱8168网卡 一块另外买的瑞昱8168网卡 两条网
  • Linux常见命令整理

    Linux 常用命令 基本命令掌握 磁盘命令 cd ll 文件夹 文件创建命令 mkdir touch 文件浏览 less 文件全盘查找 find 文件操作 cp mv rm 文件编辑 vi 压缩解压 tar 权限命令 其它命令 最终 安装
  • [Qt3d] 导出QtEntity为Obj格式(遍历QtEntity)

    原文链接 https www yuque com softdev qt txv1lx class Qui3DView private struct date struct QPointer
  • java.awt.Color类

    Color类概述 Color是用来封装颜色的 支持多种颜色空间 默认为RGB颜色空间 每个Color对象都有一个alpha通道 值为0到255 代表透明度 当alpha通道值为255时 表示完全不透明 当alpha通道值为0时 表示完全透明
  • Cordova环境搭建/win10下必备依赖环境配置(Android开发)

    Cordova环境依赖 1 win10系统 2 Java环境 3 Node环境 4 AndroidStudio 5 Ant 6 Gradle 安装node环境 1 使用node官网网址下载node包 最好使用稳定版本 https nodej
  • 从C过渡到C ++的3个理由

    几十年来 嵌入式软件工程师之间一直在争论他们应该使用C还是C 根据2020年嵌入式市场调查 在大多数情况下 微控制器制造商提供的软件都以C语言提供 实际上 有56 的嵌入式软件是用C语言编写的 但是 C 逐渐流行起来 大约23 的新嵌入式软
  • Java面向对象编程

    主机甲和乙已建立了TCP连接 甲始终以MSS 1KB大小的段发送数据 并一直有数据发送 乙每收到一个数据段都会发出一个接收窗口为10KB的确认段 若甲在t时刻发生超时时拥塞窗口为8KB 则从t时刻起 不再发生超时的情况下 经过10个RTT后