刷题day_13

本文涵盖无向图、TCP端口监听、二进制流处理、Hash函数应用、Java语法及类定义规范等内容,深入解析信息技术核心概念与实践技巧。

1、下面四组数能构成无向简单图的度数列的有()。
首先要求所有数(度)之和是偶数:【任意无向图所有顶点度数之和等于边数的2倍】排除A
其次判断是否为简单图:既无平行边、也无环的图才是简单图。
C: (2,2,2)构成环,(1,1)是单独的一条线段,排除
D:(0,1,3,3,3)v1单独出来,v4和v5之间具有平行边,重数=2,排除。
2、如果希望监听TCP端口9000,应该怎样创建socket?
ServerSocket(int port) 是服务端绑定port端口,调accept()监听等待客户端连接,它返回一个连接队列中的一个socket。
Socket(InetAddress address , int port)是创建客户端连接主机的socket流,其中InetAddress是用来记录主机的类,port指定端口。
3、有n条随机的二进制流(n非常大),有n个接收器收集数据,遇到1就停止,并把之前收到的二进制传存储起来,最后0的个数大约有多少个?
每一个接收器相互独立,且认为下一次0和1出现的概率相同,均为0.5
出现1的概率为0.5,即停止的概率为0.5
那么期望可以理解成,平均需要多少个才能停止,也就是 1 / 0.5 = 2 个
而这两个里有一个是1,一个是0
那么n个接收器一个有n个0
4、考虑一个特殊的hash函数h,能将任一字符串hash成一个整数k,其中概率P(k)=2^(-k),k=1,2,…∞。对一个未知大小的字符串集合S中的每一个元素取hash值所组成的集合为h(S)。若h(S)中最大的元素max h (S) = 10,那么S的大小的期望是_______。
既然s中的任意一个字符串都能以概率2(-k)映射成k,那么每个字符映射成10的概率相等为2(-10),现在既然10出现了,就用最大似然估计的思想,设10出现的概率为1,假设s有n个字符串,则n*2^(-10)=1,求出n=1024。
5、以下为 java 语法保留不能作为类名和方法名使用的是
implements《注意有s结尾》是java实现接口的关键字,而implement则是普通单词,default是保留字,throws是抛出异常的关键字,
6、下列说法正确的是()
一个java文件中只能有一个main方法。
7、Java类Demo中存在方法func0、func1、func2、func3和func4,请问该方法中,哪些是不合法的定义?( )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class Demo{
  float func0()
  {
    byte i=1;
    return i;
  }
  float func1()
  {
    int i=1;
    return;
  }
  float func2()
  {
    short i=2;
    return i;
  }
  float func3()
  {
    long i=3;
    return i;
  }
  float func4()
  {
    double i=4;
    return i;
  }
}
这道题考的是数据类型转换问题。由大到小需要强制转换,由小到大不需要。
A:return; 没有返回值,错误
B:short → float 无须强制转换,正确

C:long → float 无须强制转换(这个最选项容易出错),正确。

float占4个字节为什么比long占8个字节大呢,因为底层的实现方式不同。
浮点数的32位并不是简单直接表示大小,而是按照一定标准分配的。
第1位,符号位,即S
接下来8位,指数域,即E。
剩下23位,小数域,即M,取值范围为[1 ,2 ) 或[0 , 1)
然后按照公式: V=(-1)^s * M * 2^E
也就是说浮点数在内存中的32位不是简单地转换为十进制,而是通过公式来计算而来,通过这个公式虽然,只有4个字节,但浮点数最大值要比长整型的范围要大。

D:double → float 没有强制转换,错误。
8、下列外部类定义中,不正确的是:( )
static修饰的为类成员,会随着类的加载而加载,比如静态代码块,静态成员,静态方法(这里只是加载,并没有调用)等等,可以想象一下,如果把一个Class文件中的外部类设为static,目的难道是让这个类随着应用的启动而加载吗?如果在这次使用过程中根本没有使用过这个类,那么是不是就会浪费内存。这样来说设计不合理,总而言之,设计不合理的地方,Java是不会让它存在的。
而为什么内部类可以使用static修饰呢,因为内部类算是类的成员了,如果没有使用静态来修饰,那么在创建内部类的时候就需要先有一个外部类的对象,如果我们一直在使用内部类,那么内存中就会一直存在外部类的引用,而我们有时候只需要使用内部类,不需要外部类,那么还是会浪费内存,甚至会造成内存溢出。使用static修饰内部类之后,内部类在创建对象时就不需要有外部类对象的引用了。
最终结论就是:static可以用来修饰内部类,但是不可以用来修饰外部类
9、以下哪项可能包含菜单条( )。
Frame是Window的直接子类,一个Frame对象就是一个有标题有边界的顶层窗口;
Panel是Container的直接子类,一个Panel对象用来添加组件和其他Panel对象的容器。
10、This调用语句必须是构造函数中的第一个可执行语句。
this()和super()为构造方法,作用是在JVM堆中构建出一个对象。因此避免多次创建对象,同一个方法内只能调用一次this()或super()。同时为了避免操作对象时对象还未构建成功,需要this()和super()的调用在第一行实现【以此来创建对象】,防止异常。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值