广联达笔试题求解答!

本菜鸡今天做了广联达的 笔试题,有几个题一直不会,请诸位大佬帮忙看一下!
选择题:
1.下列哪个不是socket函数的相关参数
   1.mac  2.ip address  3.protocol 4.tcp
2.线性规划和对偶问题有没有最优解
3.有四个矩阵M0,M1,M2,M3维度分别为,6,4,7,10,动态规划的计算顺序是M0(M2(M3*M4))
   还是((M0*M1)M2)M3,或其他顺序?

这几个选择咋做?

此外,还考了
4.死锁
5.delete,truncate
还有大量考C++类的继承封装的题目

编程题:有一个算法,每次都能将一个元素放在最前面。现在有一个随机序列,需要多少次操作才能实现从小到大排序。
此题本菜鸡是暴力破解,一直显示超时,有没有大佬分享一下思路?
本菜鸡暴力破解思路:

比如1,2,3,7,4,6,其中1,2,3,7是已经排好序的,现在4比7小,所以理论上的步骤:
1.要把4放在最前面,即4,1,2,3,7,6,此时需要一步cnt=1;
2.然后把排序好的部分中,比4小的放在前面
3,4,1,2,7,6, cnt=2;
2,3,4,1,7,6 cnt=3;
1,2,3,4,7,6,cnt=4;
以上是题目要求的实现步骤。但实际上,这个过程只需要循环计数就好了,不需要真的把4放在最前,我们只需要把4和七换位,进行排序即可,即排序是按我们自己的思路来拍,计数是按题目要求来计数。排序是swap(7,4),计数是1+排序好的数中比4小的个数
#广联达2021届秋招提前批##内推##笔试题目#
全部评论
就第一题90,,,第二题9,,,第三题没写,,,
5
送花
回复 分享
发布于 2020-07-22 20:26
第二题明明就是归并排序,为什么一直是9
1
送花
回复 分享
发布于 2020-07-22 20:44
秋招专场
校招火热招聘中
官网直投
选择做的比较水。。编程题前两个AC,第三个82。。
1
送花
回复 分享
发布于 2020-07-22 21:47
全ac了,第二题用一个栈从后往前存连续的最大值就行了o(n),第三题排序就行。
1
送花
回复 分享
发布于 2020-07-22 22:34
第三题我输出13,通过9%😂
1
送花
回复 分享
发布于 2020-07-22 23:05
1、第一题暴力排序,找最大的两个  并且个数超过两个的数字,相乘即可 2、data为原数组,flag为data的副本,对flag sort,然后以排序后的flag为基准,从后往前比较有多少个数是按照现在的顺序排序的,用count-这个数字就行, https://www.nowcoder.com/questionTerminal/adc291e7e79f452c8b59243a5ce68d3a 这个题的变形 3、暴力,就求起始的位置+2*范围的最大值,这样循环加,过了91%
4
送花
回复 分享
发布于 2020-07-22 20:34
第二题我的做法是  1.把它看成一个函数,找到最大的最小值点。比如 2 1 3 4 就是1.2 1 4 3就是3.把这个移到开头就是第一步。 2.找到所有比第一步找到的数小的数,这就是下面要移动的步数。 时间复杂度应该是N,空间复杂度是1。 第三题我就是声明怪物数组,按位置排序,再模仿区间覆盖取走一遍就好了。 代码题还好,选择题好多不会写......
3
送花
回复 分享
发布于 2020-07-22 20:44
怎么暴力,我连暴力都没想到
点赞
送花
回复 分享
发布于 2020-07-22 20:19
第三题怎么做的啊,我只找到相似的lizards and basements
点赞
送花
回复 分享
发布于 2020-07-22 20:20
可以说下第一题的思路吗 😂
点赞
送花
回复 分享
发布于 2020-07-22 20:21
第二题太难受了
点赞
送花
回复 分享
发布于 2020-07-22 20:25
三道编程题都太憋屈了,思路没啥问题,就是没到100。
点赞
送花
回复 分享
发布于 2020-07-22 20:44
不会今天什么时段考的都是这些题吧😥
点赞
送花
回复 分享
发布于 2020-07-22 21:12
不知道,我是早上10点做的,看看大家都是什么时候做的
点赞
送花
回复 分享
发布于 2020-07-22 21:14
第二题,从后往前遍历,找到以n开始的连续递减子序列长度count,n-count即可
点赞
送花
回复 分享
发布于 2020-07-22 21:16
第三题,特例法可以过部门用例,比如当攻击范围y很大,可以覆盖所有怪物位置时,攻击次数就等于血量最大的那只怪。将怪物坐标从小到大排列,从最左边开始,保持范围2*y依次扫描,暴力求解,直至队列空。
点赞
送花
回复 分享
发布于 2020-07-22 21:21
第一题,统计各个边长次数,对边长降序排序,取出现次数大于等于2的最大的两个边长,需要注意可能仅有一个边长个数大于等于4的情况
点赞
送花
回复 分享
发布于 2020-07-22 21:23
第二题我的思路是,1-n的数,先把n-1的找出来,比如2,3,1,4,6,5;先把5找出来放到list的第一个,变成了5,2,3,1,4,6,这时候已经移动了一次了,这时候就可以一直循环从第一个开始,找比5小1的数就是4,找到了就把4放到第一个位置,再把4移除,就变成了4,5,2,3,1,4,6,再找比4小1的以此类推,直到2,3,4,5,1,6;这时候比2小1的就是1了,把1放到最前面,移除1,就变成了有序的升序序列,每次把一个元素移到最前面都要++,最后输出结果,请大佬们看一下我的方法错在哪了,这些用List的remove和add方法都能实现,就是没AC全部哭了
点赞
送花
回复 分享
发布于 2020-07-22 21:32
第二题我是真SB,没看清放最前面就直接憝🙄
点赞
送花
回复 分享
发布于 2020-07-22 21:39
第二题从左到右遍历并记录最大值 如果数比最大值小就说明需要swap 需要的次数就是数的大小 然后求最大就行了
点赞
送花
回复 分享
发布于 2020-07-22 22:10

相关推荐

8 53 评论
分享
牛客网
牛客企业服务