[讨论] 刷leetcode的语言选择

楼主: ericerix (Ponwar)   2021-02-27 10:24:25
大家好,我文组跨考资工,目前在读研究所
由于大学期间没有刷过leetcode,所以赶紧来恶补一下,
加上未来想朝纯软件工作发展,leetcode似乎不可或缺。
但是,最近有个疑惑是,leetcode要用什么语言好?
目前大部分都用python,近期想使用C,原因如下:
python内部有很方便地处理字串方法以及资料结构,
有时候题目要求的内容跟刻那些东西无关,直接引用就好,
重要的是能解出问题的方法。
而使用C则是单纯想熟悉C语言,未来工作写C比较赚(?
而且之前爬文,有看到说新手用python写不利,原因忘记了
正当用C写得好好的时候,我又突然想到:用C做leetcode的人很少,
这样比较performance的时候,会不会比较失准?
python写得人多,竞争者自然多,
也就是说,用python写比较能看出自己的做法是否有竞争力
还是我想多了?自己爽就好
作者: DrTech (竹科管理处网军研发人员)   2021-02-27 10:39:00
你要先看你要找哪类工作。不然浪费时间而已。
作者: shter (飞梭之影)   2021-02-27 10:39:00
爽就好,我用 javascript,因为我开发 browser + node.js
作者: yamakazi (大安吴彦祖)   2021-02-27 10:44:00
用C要自己刻map吗?
作者: ko27tye (好滋好滋)   2021-02-27 10:47:00
你想走韧体 用python刷就是浪费时间阿 走web用C写也是
作者: DrTech (竹科管理处网军研发人员)   2021-02-27 10:51:00
不是学了C,就能去IC设计或系统厂,而是他们本身有其他专业才能去该公司。顾好研究所本业,根据未来工作方向学习才快。例如,如果做机器学习的研究与工作,才是去刷python,万一你是要去做前端,后端,APP,刷python 或C做什么呢
作者: h129875230 (GOD)   2021-02-27 10:52:00
你先想好要进科技业还是软件业 然后科技业有学历歧视以上
作者: DrTech (竹科管理处网军研发人员)   2021-02-27 10:57:00
如果是要前后端,APP工作,你连续两篇,学习重点放错了喔。
作者: LordCHTsai (我饿了)   2021-02-27 11:03:00
会考leetcode的公司通常不在乎语言用built-in method可以解的题目太简单,也不会考
作者: BlacksPig (Black Handsome s Pig)   2021-02-27 11:13:00
先确定你未来就业方向是否一定要刷不是全部公司都需要刷
作者: ericrobin   2021-02-27 11:33:00
通常会有几个语言给你选 碰上指定的话大不了就放弃没有什么不会考的吧= = 排列组合那种会叫你自己写LRU用python也是有结构可秒解 但也是很常考然后用C写Leetcode是时间太多吗= =
作者: mickeyha (M*schief)   2021-02-27 11:47:00
LRU用Java也有结构可以秒解
作者: aidansky0989 (alta)   2021-02-27 11:51:00
珍惜生命请用py刷
作者: kyrie77 (NTU KI)   2021-02-27 12:14:00
用C刷我只能respect,保重XD
作者: tig4605246 (tig4605246)   2021-02-27 12:14:00
哥,你要的是专精某个领域的知识。语言只是工具
作者: eric820715 (Eric)   2021-02-27 12:15:00
用C写会疯掉,第一题two sum你就可以感觉到了。c还要先建struct,python一行hash_table=dict()就解决如果时间足够我觉得可以python写个100题左右这时你看到题目就会知道大概有哪些方法,复杂度如何然后再试着用c语言写看看,因为这时你只要专注如何用C实现你的想法。
作者: Yuan (雨不停的夜)   2021-02-27 12:28:00
写C比较赚?!
作者: testPtt (测试)   2021-02-27 12:30:00
其实老板不写程式都会聚焦在美美的UI 录取率还蛮高的
作者: j0958322080 (Tidus)   2021-02-27 12:33:00
想熟悉语法用 C 写,拼题数用 python
作者: wxywxywxy   2021-02-27 13:09:00
你应该先订目标 再决定语言 不是觉得好像需要去学
作者: cuteSquirrel (松鼠)   2021-02-27 13:33:00
Jave, C++, Python 的STL比较充足Java
作者: wawi2 (@@)   2021-02-27 13:44:00
java. c++. 挑一个
作者: kleinfour (天然记念物)   2021-02-27 14:03:00
用最熟悉的就好 leetcode主要还是练算法很多语言特性都用不上performance也不用管 题数多类型广才重要
作者: wawi2 (@@)   2021-02-27 14:15:00
performance不用管? excuse me?
作者: meowyih (meowyih)   2021-02-27 14:24:00
楼楼上说的是script vs native或是native vs vm的performance,楼上说的是algorithm big-o 的performance虽然是鸡同鸭讲,但是火药味已经出来了,放连假的何必勒~
作者: askaleroux (FalconTW)   2021-02-27 14:25:00
C++首选用C写只去找自己麻烦所以Google问一堆白板题结果只是一堆embedded缺 也是很问号
作者: lturtsamuel (港都都教授)   2021-02-27 14:40:00
rust
作者: final01 (牛顿运动定律)   2021-02-27 14:43:00
如果只是要练习算法的确效能可以先不看啊,有问题吗
作者: stupid0319 (征女友)   2021-02-27 15:00:00
能run就好了,请客户vm效能开到最大就好了
作者: meokay (我可以)   2021-02-27 15:29:00
现在的风气真的是让人佩服
作者: hanshsu (小肉呆)   2021-02-27 15:38:00
你还在实作sort 别人可能已经写完十题了话说我m同学说他已经好几年没写扣了 也才三十初 写c好赚吗? 不见得吧
作者: stupid0319 (征女友)   2021-02-27 16:02:00
珍惜生命,远离C语言
作者: taffy128s (imcorn)   2021-02-27 16:08:00
本科:吸加加 非本:拍桑 浅见
作者: hegemon (hegemon)   2021-02-27 16:10:00
笑死,用C刷题怎么了吗?一堆菜比八高频交易商用一堆C,薪资绝对屌打蛇仔
作者: TheOneisNEO (Thomas Anderson)   2021-02-27 16:32:00
c有内建sort()可以用啊 like this:https://imgur.com/QlJzfsR
作者: lturtsamuel (港都都教授)   2021-02-27 16:34:00
算法第一堂课就在教复杂度分析 有人说练算法不用管效能 是反串还是??还在c语言没有sort qsort没听过喔 笑死
作者: alihue (wanda wanda)   2021-02-27 16:47:00
他是说刷题只要管算法效能 不用管语言的效能吧...
作者: drajan (EasoN)   2021-02-27 16:49:00
挑你最擅长的语言就好 重点是解题的思路
作者: shiauji (消極)   2021-02-27 17:07:00
其实能用C 刷题的才是高手......
作者: s06i06 (三条鱼)   2021-02-27 18:02:00
c++
作者: bill1992 (我是魔法的踪迹)   2021-02-27 18:12:00
哪有人用c再刷 竞赛网站九成都c++
作者: DrTech (竹科管理处网军研发人员)   2021-02-27 18:20:00
连原文想做什么工作都不知道,就在战哪个语言比较高级,这时别忘了,其实PHP才是地球上最强的语言
作者: lunasdejavu (我的头上长香菇了)   2021-02-27 18:31:00
....不会用C刷的根本api工程师吧
作者: LinuxKernel (Linus Torvalds)   2021-02-27 18:49:00
C++ or Java
作者: hegemon (hegemon)   2021-02-27 19:22:00
我就用C刷呀
作者: ckvir (ckvir)   2021-02-27 19:38:00
用 c 怎么做 hash map?有些是考你用资料结构,不是叫你实作,当然用 C++
作者: mirror0227 (镜子)   2021-02-27 22:35:00
看你以后走向 想走什么就用相对应的语言练习
作者: x000032001 (版废了该走了)   2021-02-27 22:51:00
hash map可以事先写好 复制贴上阿
作者: TheOneisNEO (Thomas Anderson)   2021-02-27 23:10:00
话说interview的时候 如果用C但这题必定要用hash map不晓得该怎办
作者: stupid0319 (征女友)   2021-02-27 23:10:00
用google map不好吗
作者: ericrobin   2021-02-27 23:13:00
面试通常都是在考对资料结构跟算法的掌握先不说难度 面试官看到你花时间在建hash table会先傻眼然后多数OA是会管制跳分页跟复制贴上的 就算照抄也费时
作者: tnfshjcc (↖煞气a携阿携↘)   2021-02-28 00:10:00
用最多面试官懂的语言 在美国是python台湾用python的公司真的很少 所以不建议回答关于语言在leetcode上的TLE,是分开计算的各个语言的time limit应该是不同的 但也有可能我记错不过lee215确实有说过有时BF解法在C++会过python不会
作者: viper9709 (阿达)   2021-02-28 00:32:00
推DrTech
作者: orz811017 (orz811017)   2021-02-28 00:56:00
首选C++ 次选 JAVA PYTHON用C太多要手刻了 OA 白板题没这时间C++ 是各产业几乎都通用
作者: modelfucker (喂,礼安)   2021-02-28 01:29:00
物件…导向很重要你之后去面试可以说你很会c++试试看XD
作者: SouthRa (南宫雨)   2021-02-28 03:10:00
lc 上面使用语言的人数大概是 java>c++>python 我是觉得你不需要担心用c++ 会不好参考performance排名楼主跟推文哪些提到C时是包含C++的 哪些是刻意区隔两者的看了好混乱@@
作者: TakiDog (多奇狗)   2021-02-28 06:23:00
py要刻意不走捷径,Java Golang可以试试
作者: tnfshjcc (↖煞气a携阿携↘)   2021-02-28 06:33:00
如果你人在美国 大胆用python不会吃亏 在台湾就用c++吧
作者: genic (路过的小细菌)   2021-02-28 10:54:00
谢谢。我本身做embedded firmware 多年只懂C,也有一样的困惑。做了几题后,想到要实作hash table 跟dictionary 根本吐血。都不知道该怎么刷起,现在知道了。开始恶补Python然后再刷。
作者: IMPOSSIBLEr (I'm possible rrr)   2021-02-28 11:39:00
没人推go,我来推一下
作者: Amazonite96 (风风)   2021-02-28 12:28:00
最近刚面上不错的纯软,考白板题用C++(STL已经有很多好用的函式库 可以表达出你对资料结构的熟悉),但平常写ML作业用Py 所以看工具导向吧,也可以反过来,熟悉最重要
作者: jason710068 (综合水果汁z)   2021-02-28 13:00:00
板上有心得 只推c++或java不过建议自己要先熟悉各式资料结构怎么实现的 例如linked list , bst 等等
作者: HyperPoro (交大大众苍汰)   2021-02-28 14:38:00
我看leetcode的讨论区 py和java都满多的 可以参考
作者: HKCs (路人)   2021-02-28 14:42:00
高阶工程师不会只用一种语言 我现在后端都用GO写
作者: wei115 (ㄎㄎ)   2021-02-28 15:23:00
C可以用uthash系列的资料结构八
作者: TheOneisNEO (Thomas Anderson)   2021-02-28 16:24:00
uthash颇神 marco一堆有趣的用法
作者: penril0326   2021-02-28 19:42:00
没什么人推go 我推一下
作者: shooter555 (shooter)   2021-03-02 12:52:00
没刷过 原来刷题 C不能用glib的hash?
作者: ckvir (ckvir)   2021-03-02 16:40:00
用 uthash 概念不就 API,那不如直接用 C++

Links booklink

Contact Us: admin [ a t ] ucptt.com