知乎19秋招Java后端笔试题回馈牛客~

好消息来了!知乎今年秋招提前批java开发工程师的笔试题,分享给大家,附带选择题答案哦!

一、单选题

1. (本题2)在操作系统中同时存在多个进程,它们( C)

A:不能共享系统资源

B:不能调用同一段程序代码

C:可以共享允许共享的系统资源

D:可以共享所有的系统资源

2. (本题2)某进程在运行过程中需要等待从磁盘上读入数据,此时进程的状态将: (C )

A:从就绪变为运行

B:从运行变为就绪

C:从运行变为阻塞

D:从阻塞变为就绪

3. (本题2)以下符合LIFO行为的是:A

A:

B:队列

C:哈希表

D:

4. (本题2)对信号量描述错误的是D

A:是一个计数器

B:是一种锁机制

C:多个进程可以同时访问

D:多个线程不可以同时访问

5. (本题2)如果某系统15★4 = 112成立,则系统采用的是( A)进制。

A:6

B:7

C:8

D:9

二、简答题

1. (本题10)简述程序运行空间内的堆和栈的区别?

2. (本题10)请简述你对并发和并行的理解

3. (本题10)请简述并发与并行的区别,并简述什么是「线程安全」

三、编程题

1、题目名称:查找整数(25)

时间限制:1000ms

题目描述:给定一个非降序的整数数组,数组中包含重复数字(重复数字很多) ,给定任意整数,对数组进行二分查找,返回数组正确的位置,给出函数实现。

a. 连续相同的数字,返回最后一个匹配的位置

b. 如果数字不存在返回 -1。(测试用例仅做参考,我们会根据代码质量进行评分)

输入描述:第一行给定数组长度n,目标值tar(1<=n,tar<=10000)

第二行给出n个整数a.(1<=a<=10000)

输出描述:按题目描述输出。

示例1

输入

7 4

1 2 2 3 4 4 10

输出

5

2、题目名称:求并集(25)

时间限制:1000ms

题目描述:输出两个单向有序链表的并集 如链表 A {1 -> 2 -> 5 -> 7} 链表 B {3 -> 5 -> 7 -> 8} 输出: {1 -> 2 ->3 -> 5 -> 7 ->8} 。(测试用例仅做参考,我们会根据代码质量进行评分)

输入描述:第一行输入整数nm,(1<=n,m<=1000)分别表示两个链表的长度。

第二行给出A链表所包含元素。(1<=a<=1000)

第三行给出B链表所包含元素。(1<=b<=1000)

输出描述:按题目描述输出。

示例1

输入

4 4

1 2 5 7

3 5 7 8

输出

1 -> 2 ->3 -> 5 -> 7 ->8

3、题目名称:计算逆波兰表达式的结果(25)

时间限制:1000ms

题目描述:逆波兰记法中,操作符置于操作数的后面。例如表达“三加四”时,写作“3 4 +”,而不是“3 + 4”。如果有多个操作符,操作符置于第二个操作数的后面,所以常规中缀记法的“3 - 4 + 5”在逆波兰记法中写作“3 4 - 5 +”:先3减去4,再加上5。使用逆波兰记法的一个好处是不需要使用括号。例如中缀记法中“3 - 4 * 5”3 - 4*5”不相同,但后缀记法中前者写做“3 4 5 * -”,无歧义地表示“3 (4 5 *) -”;后者写做“3 4 - 5 *”。(测试用例仅做参考,我们会根据代码质量进行评分)

输入描述:第一行输入一个整数 n,表示包含元素数量.(1<=n<=1000)

第二行输入n个元素。

输出描述:输出计算后的结果。

示例1

输入

2 1 + 3 *

输出

9

#秋招##知乎##笔试题目##Java工程师##Java#
全部评论

相关推荐

和蔼:在竞争中脱颖而出,厉害! 但是有一个小问题:谁问你了?😡我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了
点赞 评论 收藏
分享
2 53 评论
分享
牛客网
牛客企业服务