第一题:
深度学习是当前很热门的机器学习算法。在深度学习中,涉及到大量矩阵相乘,
现在需要计算三个稠密矩阵A,B,C的乘积ABC,假设三个矩阵的尺寸分别为m*n,n*p,p*q,且m<n<p<q,
以下计算顺序效率最高的是:()
正确答案是:B 你的答案是:未做 错误
A(BC)
(AB)C
(AC)B
所有效率都相同
解析:
搜索我的文章:三个元素相乘的矩阵乘除法
第二题:
下面有关http keep-alive说法错误的是?、
A: 在HTTP1.0和HTTP1.1协议中都有对KeepAlive的支持。其中HTTP1.0需要在request中增加“Connection:
keep-alive” header才能够支持,而HTTP1.1默认支持
B: 当使用Keep-Alive模式时,Keep-Alive功能使客户端到服 务器端的连接持续有效,当出现对服务器的后继请
求时,Keep-Alive功能避免了建立或者重新建立连接
C: 可以在服务器端设置是否支持keep-alive
D: 当你的Server多为动态请求,建议开启keep-alive增加传输效率
解析: D
1. A、B、C为keep-alive的概念客观性描述,说法都是正确的
2. 当Server的静态资源(css 、html、js、img)较多时,打开keep-alive的开关能够显著减少建立tcp连接的 cpu时间消耗
3. 当Server的请求大多为动态请求(数据库访问或者I/O较多)时,keep-alive关闭比较好,能够节省一定 的内存,同时节省的内存可以用来作为cache,降低I/O压力
4. 基于以上分析,当Server多为动态请求时,尽量关闭keep-alive
第三题:
在Java中,包com中定义了类TestUtil,在com的子包util中定义了同名类TestUtil,给定如下Java代码,编译运行时,将发生( )。
package test;
import com.util.TestUtil;
import com.TestUtil;
public class Test {
public static void main(String[] args) {
TestUtil testutil = new TestUtil();
}
}
A: 创建了一个com.TestUtil对象
B: 创建了一个com.util.TestUtil对象
c: 运行时出现异常
D: 编译无法通过
解析: D
java导包冲突,,,不允许同时导入两个有相同类名的包,eclipse无法识别出到底选哪个包,所以就报错了咯
import com.textUtil
import com.util.testUtil
这两个包有冲突;
删除其中任意一个包就不会报错了
第四题:
一:linux文件权限对应的数字:
1:在Linux中,file.sh文件的权限为-rw-r--r-x, 其对应权限用数值形式表示为( A )
645
643
775
745
使用数字表示权限
除了符号,也可以使用八进制数字来指定具体权限,如下表所示:
数字 | 说明 | 权限 |
0 | 没有任何权限 | --- |
1 | 执行权限 | --x |
2 | 写入权限 | -w- |
3 | 执行权限和写入权限:1 (执行) + 2 (写入) = 3 | -wx |
4 | 读取权限 | r-- |
5 | 读取和执行权限:4 (读取) + 1 (执行) = 5 | r-x |
6 | 读取和写入权限:4 (读取) + 2 (写入) = 6 | rw- |
7 | 所有权限: 4 (读取) + 2 (写入) + 1 (执行) = 7 | rwx |
第五题:
[不定项选择题]
关于ACID下面说法正确的是?
A 是可用性。整个操作中的所有动作是保证高可用性,系统必须提供要求的稳定性,以保证事务的提交。
C 一致性。在事务开始之前和结束后,数据库的约束保持不变。
I 隔离性。两个同时运行的事务的执行是互不影响,中间结果不可交叉访问。
D 持久性。在事务提交以后,该事务所作的更改持久保存在存储介质之中,不会被回滚。
正确答案:B D
解析:
原子性( Atomicity): 整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环
节。事务在执行过程中发生错误,会被 回滚 (Rollback)到事务开始前的状态,就像这个事务从来没
有执行过一样。
一致性(Consistency): 在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。具体来说就
是,比如表与表之间存在外键约束关系,那么你对数据库进行的修改操作就必需要满足约束条件,即如
果你修改了一张表中的数据,那你还需要修改与之存在外键约束关系的其他表中对应的数据,以达到
一致性。
隔离性(Isolation): 隔离状态执行事务,使它们好像是系统在给定时间内执行的唯一操作。如果有两个事
务,运行在相同的时间内,执行相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在
使用系统。这种属性有时称为 串行 化,为了防止事务操作间的混淆,必须串行化或序列化请求,使得
在同一时间仅有一个请求用于同一数据。
持久性(Durability): 在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,
并不会被回滚。
第六题:
以下选项中哪个是发出下列查询后Oracle返回的值:
select substr(job, 1, 3) from emp where ename like upper(‘__ar%’) ?
正确答案是:A 你的答案是:未做
ANA
CLE
MAN
SAL
解析:
---取1到3位
SQL> select job,substr(job,1,3) from emp;
结果:
JOB SUBSTR
--------- ------
CLERK CLE
SALESMAN SAL
SALESMAN SAL
...
---取后2位
SQL> select job,substr(job,length(job)-1,length(job)) from emp;
JOB SUBSTR(JOB,LENGTH(
--------- ------------------
CLERK RK
SALESMAN AN
SALESMAN AN
MANAGER ER
.....
例:select ename from emp where ename like'%A_ _ _'; 这条SQL语句中'%A_ _ _'是什么意思?
%是模糊查询,表示倒数第四位是字符A,%表示前边的字符串任意,下划线表示A的后边有多少位的字符串。
你这个结果查询出来的结果,都是A字符在倒数第四位的行。
重点: select substr(job, 1, 3) from emp where ename like upper(‘_ _a%’) ?
依据上图可以看到 JOB 列中第三个字母是A 的单词是ANALYST ,而(job,1,3)的意思是从第一个字母取到第三个
答案是:ANA
第六题:
面试题:在Oracle中发出的下列查询:
SQL> select months_between(‘15-MAR-83’,’15-MAR-97’) form dual;
Oracle返回什么?
正确答案是:D 你的答案是:C 错误
A: 14
B: -14
C: 168
D: -168
解析: {March(Mar)3月 }此题的问题是求:83年3月15日 - 97年3月15日 之间的有多少月?
求出是 83年3月15日 - 97年3月15日 = -168 月
MONTHS_BETWEEN (x, y)用于计算x和y之间有几个月。如果x在日历中比y早,那么MONTHS_BETWEEN()就返回一个负数。否者为正数
注意:
在调用MONTHS_BETWEEN函数时,日期的次序非常重要:如果想让结果为正数,稍晚的时间必须出现在前面。
下面这个例子显示了2008年5月25日和2008年1月15日之间相差的月数。注意由于第一个参数是稍后的日期(2005年5月25日),因此所 返回的结果是正数:
SELECT MONTHS_BETWEEN('25-MAY-2008', '15-JAN-2008' )FROM dual;
-------------------------------------------
结果:4.32258065
SELECT MONTHS_BETWEEN('15-JAN-2008' ,'25-MAY-2008')FROM dual;
结果:-4.32258065
二逻辑题:
【例题】(2010·江苏B类)三个学生共解出30道数学题,每人都解出了其中的12道,且每道
题都有人解出.只有一人解出的题叫做难题,只有两个人解出的题叫做中等题,
三人都解出的题叫做容易题.在这30道题中,难题、中等题、容易题均有,且题数各不相等,则难题的题数是( ).
A.14 B.15 C.22 D.25
【解析】D
假设难题有x道,中等题有y道,容易题有z道,那么根据题意可得:(1)x+2y+3z=36(2)x+y+z=30.(1)-(2)得:y+2Z=6,
因为y和z都是正整数且yz,所以只有一种情况,即y=4,z=1,这时x=25.所以正确答案为D项.
X+2y+3z=36这个方程什么意思:
每人解了12道,重复的算进去,总共解了36道.
难题一人解出,只有1*X道;中等题两人解出,则中等题有2*Y道(算重复的);简单题就是3Z道了.
所以X+2Y+3Z=36.
第五题:
二: 简答题:
第一题:描述IPv6相对IPv4带来了哪些技术差异?
一:IPv6具有更大的地址空间。IPv4中规定IP地址长度为32,最大地址个数为2^32;而IPv6中IP地址的长度为128,即最大地址个数为2^128。与32位地址空间相比,其地址空间增加了2^128-2^32个。
二:IPv6使用更小的路由表。IPv6的地址分配一开始就遵循聚类(Aggregation)的原则,这使得路由器能在路由表中用一条记录(Entry)表示一片子网,大大减小了路由器中路由表的长度,提高了路由器转发数据包的速度。
三:IPv6增加了增强的组播(Multicast)支持以及对流的支持(Flow Control),这使得网络上的多媒体IPv6的长分布式结构图
[3]应用有了长足发展的机会,为服务质量(QoS,Quality of Service)控制提供了良好的网络平台。
四:IPv6加入了对自动配置(Auto Configuration)的支持。这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。
五:IPv6具有更高的安全性。在使用IPv6网络中用户可以对网络层的数据进行加密并对IP报文进行校验,在IPV6中的加密与鉴别选项提供了分组的保密性与完整性。极大的增强了网络的安全性。 六:允许扩充。如果新的技术或应用需要时,IPV6允许协议进行扩充。
七:更好的头部格式。IPV6使用新的头部格式,其选项与基本头部分开,如果需要,可将选项插入到基本头部与上层数据之间。这就简化和加速了路由选择过程,因为大多数的选项不需要由路由选择。
八:新的选项。IPV6有一些新的选项来实现附加的功能。