这几天通过做算法题,谈谈自己的对语言的感觉

2020-06-17 21:40:25 +08:00
 hejw19970413

在 Java 中在工具包中,就提供了多种多样的数据结构的支持 map hash 栈 等等。在工业级别上这种的老牌而又稳定的数据以及语言,给予开发者很多的方便。

在 Go 中没有对应的像 Java 中那么多的数据结构支持,但是在语法上给予开发者足够的想象空间。神奇的“切片”

在 PHP 中最重要的还是在于 PHP 的数组。PHP 中的数组是万能的小黑,在官方提供的函数给予开发者足够的方便,这可能就是 PHP 能够快速开发的秘诀。

Python 接触的不多,但是每次用 Python 解决问题,好像不用费太多的步骤,直击要害。但是自己用后的感觉就是自己不知道 Python 在内部搞了什么飞机

Ps:这个只是自己的感觉。也没有什么太多的感受,就是在相同的思路上,每个语言的实现方式的不同。也能希望得到个位的指点。

4872 次点击
所在节点    程序员
34 条回复
sxfscool
2020-06-18 08:46:34 +08:00
有不少 PHPer 分不清 map 和 array[狗头]
lithbitren
2020-06-18 09:07:12 +08:00
@786375312123 1192 吗?不是直接 tarjan 嘛,比赛的时候几分钟用拓扑排序 ac 了,比完才意识到拓扑排序是错的,这题怎么讨论
Rwing
2020-06-18 09:17:59 +08:00
C# ???
liberty1900
2020-06-18 09:18:12 +08:00
发明一种语言,在装编译器的时候可以选择封装度,伪"动态"类型
goodboy95
2020-06-18 10:00:42 +08:00
大学一直用 C++搞算法题,工作两年之后想再试试,结果发现 C++没了 split 都会让我非常难受……
goodboy95
2020-06-18 10:06:21 +08:00
@786375312123 当初在知乎上看见有人贴这题,给我的感觉就是,打 ACM 的那帮子人到底接触了几百种数据结构和算法啊
786375312123
2020-06-18 15:26:14 +08:00
@lithbitren 对,“直接”tarjan 。暴力解呗,不需要考虑时间复杂度?
786375312123
2020-06-18 15:44:46 +08:00
@goodboy95 高频题,就那么几道难的。多做做就好了,其实也没什么麻烦的。都是熟能生巧罢了
goodboy95
2020-06-18 17:41:47 +08:00
@786375312123 主要是一群 ACMer 说这是 ACM 签到题,比赛时给人送分的那种……哎,感觉他们这水实在深
786375312123
2020-06-18 17:45:31 +08:00
@goodboy95 你花个一年时间去备赛也会一样的,这东西就是熟能生巧。。。而且 acm 的难度不是数据结构有多难,大多数情况是读题你得想明白这个题到底是什么问题,用什么样的算法。
lithbitren
2020-06-18 20:27:07 +08:00
@786375312123 我说的时间复杂度讨论不是这种,说的是那题的两种解法一种是 O(m*m*n)一种是 O(m*n*n*n),python 必须依据 m 和 n 的数据规模分类讨论成 O(m*n*min(m, n*n))的复杂度才能过,其他语言都不用。
786375312123
2020-06-18 22:56:32 +08:00
@lithbitren 你不是说暴力吗?暴力你也可以试试遍历树,用其他语言
12tall
2020-06-19 09:02:03 +08:00
@Vegetable 经典啊,woc
LennieChoi
2020-06-19 10:20:57 +08:00
写算法还是 python 最爽啊,不是说它提供了很多工具函数,是他的语法简便性。尤其 A 题的时候,不用写括号,不用写大括号,不用写分号,不用 var,各种懒人操作

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/682495

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX