刷leetcode用python还是java_使用Python上手刷LeetCode

个人之前用C++和Java共写过200题,之后转成Python。

一般面试中写算法题的考察目标是:算法+数据结构

解题过程中的交流沟通

代码实现质量

Python由于表达高效,比如Java50行实现的题Python可能只要30行,Java要敲十几下键盘的事Python只要敲几下。因此可以更清楚的展示思路,也方便在时间非常有限的面试过程中更快写出题目。

当然,对于学习数据结构来说Python不合适,如果你之前没有上过一门数据结构的课,那么推荐一下CS61B,使用Java。中文C++版本推荐学堂邓俊辉在线数据结构

Python只是一个适合用来过面试写算法题的工具(当然FP语言更适合写算法,但Python更普遍),如果有数据结构的基础的话可以很快上手。

上手材料推荐读这门课前是节课的notes,看前三节,学一点微小的Pythonic porgrammingCIS 192: Python Programming​cis192.github.io题外话,CIS 19x是UPenn的一系列迷你课程,一般是一些在某些领域有经验的研究生或本科生来上的,内容是新语言入门,或者Web开发一类。它最大的好处是,教课的是学生,比起教授或者经验丰富的工程师更讲人话,所以课件非常好理解。往年有Rust,Haskell,C++的课,我在上手新语言的时候都会来读读这系列课的notes,非常有帮助。

还可以参考: (这个好大哥自己的频道也很有意思))Talk: Conor Hoekstra - Beautiful Python Refactoring​www.youtube.com

比如LeetCode提交中有很多非调库的一行解法都是Pythonic programming,意味着充分利用Python语言特性,把其他语言中很难写/要写很长的功能用很短很简洁的方式写出来。

然后就可以按分类开工啦,推荐分类

我的分类Python题解持续更新中麦当劳No1:LeetCode二分查找专题1 易于理解的边界详解(Python)​zhuanlan.zhihu.com麦当劳No1:LeetCode Partition专题(Python)​zhuanlan.zhihu.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值