完美世界4-8 Java面试题目

第一个算法题,求6个位置的最短路径问题
第二个算法题,01背包
#完美世界#
全部评论
算法参考 全A
1
送花
回复 分享
发布于 2021-04-08 21:36
第一题Dijkstra,第二题暴力递归。
点赞
送花
回复 分享
发布于 2021-04-08 21:31
神州信息
校招火热招聘中
官网直投
前面的题呢,难吗?
点赞
送花
回复 分享
发布于 2021-04-08 22:09
我也给两个全A参考。 第一题: public static void main(String[] args) { Scanner in = new Scanner(System.in); long[][] cityAndDis = new long[6][6]; for (int i = 0; i < 6; i++) { for (int j = 0; j < 6; j++) { int x = in.nextInt(); if (x == -1) cityAndDis[i][j] = Integer.MAX_VALUE; else cityAndDis[i][j] = x; } } int start = 0; long[] ans = Dijkstra(cityAndDis, start); for (int i = 1; i < 6; i++) { System.out.println(ans[i]); } } private static long[] Dijkstra(long[][] cityAndDis, int start) { long[] city = new long[cityAndDis.length]; long[] ans = new long[cityAndDis.length]; city[start] = 1; ans[start] = 0; for (int i = 1; i < cityAndDis.length; i++) { long min = Long.MAX_VALUE; int k = 0; for (int j = 0; j < cityAndDis.length; j++) { if (city[j] == 0 && cityAndDis[start][j] < min) { k = j; min = cityAndDis[start][j]; } } city[k] = 1; ans[k] = min; for (int j = 0; j < cityAndDis.length; j++) { if (city[j] == 0 && cityAndDis[k][j] + cityAndDis[start][k] < cityAndDis[start][j]) { cityAndDis[start][j] = cityAndDis[k][j] + cityAndDis[start][k]; } } } return ans; }
点赞
送花
回复 分享
发布于 2021-04-08 22:10
第二题:public static void main(String[] args) { Scanner in = new Scanner(System.in); int goodsNum = in.nextInt(); int bag = in.nextInt(); int[] goodsWei = new int[goodsNum]; int[] goodsVal = new int[goodsNum]; for (int i = 0; i < goodsNum; i++) { goodsWei[i] = in.nextInt(); } for (int i = 0; i < goodsNum; i++) { goodsVal[i] = in.nextInt(); } System.out.println(findMaxVal(goodsWei, goodsVal, 0, bag)); } private static int findMaxVal(int[] goodsWei, int[] goodsVal, int index, int bag) { if (bag < 0) { return -1; } if (index >= goodsVal.length) { return 0; } int v1 = findMaxVal(goodsWei, goodsVal, index + 1, bag); int v2 = findMaxVal(goodsWei, goodsVal, index + 1, bag - goodsWei[index]); int v3 = 0; if (v2 != -1) { v3 = goodsVal[index] + v2; } return Math.max(v1, v3); }
点赞
送花
回复 分享
发布于 2021-04-08 22:10
这是实习还是校招?
点赞
送花
回复 分享
发布于 2021-04-10 01:51
有收到面试通知吗
点赞
送花
回复 分享
发布于 2021-04-11 11:18
楼主收到面试通知了吗?面试的时候有没有问代码题啊🤣
点赞
送花
回复 分享
发布于 2021-04-27 14:51

相关推荐

#牛客帮帮团来啦!有问必答##牛客在线求职答疑中心#1.项目上线之后,在大量用户使用的背景下,我们可以在什么地方进行优化2.如果用户上传的文件量已经超出我们的服务器容量限制了,我们除了加盘扩容之外,还有什么方式?3.文件如果在上传的时候网络中断,如何确保再上传的时候在原来的进度上继续上传?我们是如何实现断点续传的?如果我们更换浏览器重新上传文件,还会有之前的上传进度吗?4.文件秒传的时候发生MD5冲突怎么办?比如用户上传的是A文件,但是他与我们服务器中B文件的MD5值是一样的(哈希冲突),那么在这种场景下用户上传A,执行秒传逻辑后实际上存储的是B,我们如何优化这种哈希冲突?5.同一个用户短时间内上传大量文件,导致我们的后端资源紧张,无法对其他用户的请求做正常处理,我们要如何解决这种问题?6.文件预览是怎么实现的?7.我们网盘中有多级目录,讲一下多级目录的实现和如何进行删除8.如何实现文件分享的?为什么要这么做?还有没有其他的解决方案?原项目视频链接:https://www.bilibili.com/video/BV1qV4y1d7zY/不知道大家对于这些问题会怎么样回答这个项目我感觉确实不错,自己可以写的拓展点也多,比如网盘的限速下载功能,大文件不分片实现断点上传功能。也不是那种简单的增删改查项目。推荐大家去写一下这个项目
鼠鼠酱:这个项目感觉不太适合技术基础不太好的和思维理解稍微差点 的童鞋,写这玩意更多的是需要有自己的理解
点赞 评论 收藏
分享
1 5 评论
分享
牛客网
牛客企业服务