百度提前批语音方向笔试(python卷)吐槽and复盘

两道不定向选择,一道考python3和python2的区别(我从入行以来就一直是python3,从没用过python2,我咋知道。。),一道考__init__和__new__,__new__几乎没用过(淦)。
5道填空,花里胡哨。
  1. Q:python函数怎么修改全局变量 A:函数里先global变量,再修改,不知道对错
  2. Qpython5种报错信息分别代表什么错误 A:attribute error,我写的属性错误,identi~ error 写的语句错误,index error:写的序号错误(应该是索引错误,但是我忘记index的中文翻译是索引了)Name Error:命名错误(引用未定义的变量名、类名),还有个忘记了
  3. Qpython的内建数据结构 A:list,set,dict,tuple,应该漏了一个Sequences,这sequences我从来没用过,不知道什么东西,刚查的
  4. Q:python的参数传递方式 A:基本变量类型如int,float等是值传递,list,set等结构体是引用传递,这里正确的应该是可变变量结构是引用传递,像tuple不可变类型依然是值传递
  5. Q:python不可变的数据类型 A:tuple    我应该这题是错的,除了tuple,普通变量类型int,string等都是不可变的
两道编程题:
1:给定一个数组nums=[1,3,2,3,1],求幸运数组对数量,幸运数组定义如下,i<j and nums[i]>2*nums[j]。输入类型为整数,nums长度<5000。
A:这里有个陷阱,就是题目给的样例都是正整数,实际上输入类型整数已经提示了输入会有负数,如果只考虑正数就是0通过,直接暴力是60%,这里我使用空间换时间,用字典去保存前面计算过的值的次数比如dict[nums[i]]=XX次,那么当第二层循环再遇到相同的值时,例如nums[i]==nums[j],那么number=当前计数值cur+dict[nums[i]],接着break出,这里我卡了很久,是因为没考虑负数的情况,如果是负数,那么number还需要+1,因为负数>2*负数。这个小细节卡了我半小时。这样就AC了。
2:简化版的Maxpool1d。[1,3,2,-1,5,3,4],给定大小为k的滑动窗口,从数组头滑动到数组尾,输出每个窗口里的最大值,要求时间复杂度O(n)。
A:第二题真的超级简单,题目都说了滑动窗口,那就双指针+滑动窗口,直接完事。我是边滑动,边用max函数直接取窗口里的最大值,原本是想先最简单的做,看通过多少,再用窗口每次去掉最左边,新增最右边的性质去优化。。。。结果直接AC了,我都懵逼了,幸好这题太简单,我1分钟就AC了,才有足够的时间回到第一题去找问题。

必须要说下,百度的编程题特别不友好,第一是不能用IDE,不允许跳出,第二是没有自测,你只能写完点保存调试,后台返回你通过多少,其余信息都没有。我第一次遇到这么不友好的笔试,连自己测试都不行,纯黑盒,我寻思正式工作,你写完一个代码也会自己想几个例子去做单元测试吧,这笔试就完全不允许自测。。第一题卡的我苦不堪言,一直都是通过0,但凡能自测,我自己设计几个测试用例都能早点知道问题在哪。

#Python##百度##秋招##笔试题目##笔经#
全部评论
m
1 回复 分享
发布于 2021-08-18 00:04
楼主好强😮全AC了
点赞 回复 分享
发布于 2020-07-21 15:14
我下周也要做这个笔试了……瑟瑟发抖 楼主面试了吗
点赞 回复 分享
发布于 2020-07-23 17:37
楼主面试了嘛,怎么样了
点赞 回复 分享
发布于 2020-07-29 12:43
老哥有后续结果了么。我应该是跟你同一波的笔试。刚约面试。
点赞 回复 分享
发布于 2020-08-03 08:23
提前批也要做笔试吗😂
点赞 回复 分享
发布于 2020-08-03 09:04
楼主,编程题的输入输出是和牛客一样吗?
点赞 回复 分享
发布于 2020-08-03 10:53
楼主你好,想问一下如果选了python卷,编程题是必须用python吗?
点赞 回复 分享
发布于 2020-08-20 19:40

相关推荐

jack_miller:我给我们导员说我不在这里转正,可能没三方签了。导员说没事学校催的时候帮我想办法应付一下
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
3
13
分享
牛客网
牛客企业服务