楼主: HarukaYang
跳转到指定楼层
上一主题 下一主题
收起左侧

[Leetcode] 刷题该选哪一门语言?

 
🔗
ptnnac 2022-8-30 03:44:07 | 只看该作者
全局:
早一次用过 cpp 和 晚一次用过 Java:
两者的data structure都有类似的丰富程度,除了cpp对 linked list 有底层指针控制能够为类似于 LFU 的题目提供方便而我就用 Java LinkedHashMap workaround。
但是感觉cpp写代码比java繁琐,时间考验更大。hash map 和 tree map 若是 collection 类型 作为 key 要自己写比较器或 lambda,更烦。要想写的好,还要弄那些 smart pointer。
Python 感觉除了没有 tree map / tree set,各种奇淫巧技,肯定是书写效率的优选。
回复

使用道具 举报

🔗
msun 2022-8-30 04:03:30 | 只看该作者
全局:
多年面试官,无脑选python
见过太多人用java写不完,虽然logic很好但是rubric在那,没写完就是没写完,没bug free就是没bug free
特别是有些题还有part 2, part 3,不要和自己过不去啊
回复

使用道具 举报

🔗
flyingforce 2022-8-30 04:33:59 | 只看该作者
全局:
netghost 发表于 2022-8-29 11:58
要想面试以后轻松,就需要正常呈现你的状态,而不是去想太多是不是在"加戏”,有这种想法其实还是非常怀 ...

觉得你在辩论了,试图说服我说你是对的,而忘了楼主的问题本身是啥。

让我再重复一遍给你听:楼主现在懂C++和python,再问要刷题选择哪种语言好。

我的回答是应该选python,因为python简单,适合刷题,就我做面试官拿到的要求,不会有人因为只懂python被fail掉coding challenge面试,因为是否有系统设计能力不是coding challenge的考察范围。

至于你所说的“只用python对于找高端后端工作是劣势”,至少对于稍微大些的厂是不存在的,因为只要系统设计面试能过,coding challenge能过,大家default认为这样的人学习一门新语言是很快的,要不然就是这个人面试过程被水过了。
回复

使用道具 举报

🔗
netghost 2022-8-30 06:35:46 | 只看该作者
全局:
本帖最后由 netghost 于 2022-8-29 18:37 编辑
flyingforce 发表于 2022-8-29 16:33
觉得你在辩论了,试图说服我说你是对的,而忘了楼主的问题本身是啥。

让我再重复一遍给你听:楼主现在 ...

我只是指出你的建议中间逻辑不自洽的地方,并没有打算说服你。因为你显然并不是我建议的对象。

如果懂C++,并不懂python或者不熟,然后面试职位是后端,当然应该用C++。对于他来说,有语言熟悉的优势,有因为语言本身在面试种可以体现的优势,结果都不要了,对他的好处在哪里?

这里面最莫名其妙的情况就是,自己明明并不熟悉C++(并且说自己不写python),结果确去推荐一个C++相对强的人去用python。你告诉我你在认真试图解回答别人的问题?
回复

使用道具 举报

全局:
匿名用户 发表于 2022-08-27 13:51:40
以上四种语言我都用来刷题,按各自的优势看你如何舍取吧。
Python : 短,支持非常强大sortlist数据结构。
C++ : 各种OI 都用c++, java 能做的c++都能做,c++能做的
经常遇到面试官完全不会cpp 问我为什么不用某个Java有的feature
回复

使用道具 举报

全局:
匿名用户 发表于 2022-08-27 13:51:40
以上四种语言我都用来刷题,按各自的优势看你如何舍取吧。
Python : 短,支持非常强大sortlist数据结构。
C++ : 各种OI 都用c++, java 能做的c++都能做,c++能做的
cpp没有自带字符串匹配的函数怎么办?
回复

使用道具 举报

全局:
netghost 发表于 2022-08-28 13:57:05
如果后端高端的职位,python是会被fail掉的。倒不是语言本身,而是只能写python的人对系统完全不懂招来了也没法用。别的地方无所谓。
好家伙,您要不然是有十几年没跳过槽要不然就压根没工作过两年。西海岸整个后端系统从头到尾用Python做的一抓一大把。这都什么年代了还有人觉得Python是玩具语言或者只能拿来写脚本?合着哪家公司后端用python的还非得去抓会cpp的?Python跑的是慢但是分布式系统下瓶颈大都在IO那。Python的语言特性和生态圈就是用运行速度换迭代速度。Python和Ruby很像,这一代多少公司都是在Python/Ruby上构建的整个系统。哪来的什么后端高端岗位Python会fail掉?真是张嘴就来。


补充内容 (2022-08-30 07:41 +8:00):
一个人可以掌握多门语言进行日常工作,同时只用一门语言去进行算法面试。因为你在日常工作中绝大多数时候不会用到那些复杂的数据结构,也不应该大量尝试写recursion这类的写法。
所以任何一个人都可以在具备用java, cpp, go去做日常工作的情况下,只喜欢用python去解算法题。因为写起来就是快。一道题放在眼前两个人同时马上有思路的情况下,写python的那个大概率会比写java的那个写的快。这年头了没什么人像您这么无聊还搞语言歧视链,分明有个语言写起来更快还非得在那吭哧吭哧写cpp.
按照这个python会被fail的道理,什么instagram, doordash, instacart, spotify这些公司整个公司全员都能在这位层主面试这阵亡。

评分

参与人数 1大米 +1 收起 理由
风起天澜 + 1 很有用的信息!

查看全部评分

回复

使用道具 举报

🔗
flyingforce 2022-8-30 07:59:53 | 只看该作者
全局:
netghost 发表于 2022-8-29 15:35
我只是指出你的建议中间逻辑不自洽的地方,并没有打算说服你。因为你显然并不是我建议的对象。

如果懂 ...

真心跟不上你的逻辑,后面朋友对你的评价再重复一遍给你“您要不然是有十几年没跳过槽要不然就压根没工作过两年”

我一个用了十几年java的人,在面试了几十个人以后,都在琢磨学一下python,以后刷题方便,为啥我就不能建议人家用python刷题了?

要说后端语言,要说现在用得最多的,应该还是java以及他那一家子,要说新以及性能好,那是go,要说快速实现,那是python;C和C++的优势在于底层的指针操作,实话说在云计算盛行的现在,做后端的优势不明显,主要是嵌入式用得比较多,我真不知道哪家大厂用他们做后端。

还是那话,做程序员,需求一定要清楚,coding challenge就是coding challenge,最快最好地解决问题才是关键;想要显示自己的C++能力真是吃饱了。Btw, 我入行时候是写Unix C的,C++至少当年很熟,现在你拿一段代码来我也能轻易找出里面的bug。
回复

使用道具 举报

🔗
cccpwx 2022-8-30 08:33:01 | 只看该作者
全局:
netghost 发表于 2022-8-29 18:35
我只是指出你的建议中间逻辑不自洽的地方,并没有打算说服你。因为你显然并不是我建议的对象。

如果懂 ...

自从买提死了,大佬就来这里给后生们指点江山了?!
回复

使用道具 举报

🔗
yuhta 2022-8-30 09:04:21 | 只看该作者
全局:
LZ这个情况C++就行了,C++/Java/Python/JS里选用起来最熟的那个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表