This topic created in 1019 days ago, the information mentioned may be changed or developed.
都说数据结构与算法不依赖与某种语言与具体实现?如果真正掌握连都不能实现就算掌握了我打个问号? github 上有数种语言的实现也不必存在了,直接放个概念就行了。
我们都知道程序是数据结构和算法,数据结构(内存逻辑划分)不过是一块内存连续或者非连续内存单元的集合以及对其的相关的操作,对数据结构的一些操作也可以说为算法,或者对某一问题有输入输出,同一问题有不同的解法或者范式。
CPU 指行相关的指令,操作内存当中的数据以及指令。一切语言实现的程序都是这样。那问题来了,现实当中,切换语言为啥成本这么大,按道理你掌握一门语言学习其他语言应该要不了一上午吧,但为啥你一碰到相关业务(在业务搞清楚下)不是 Google 都是其他方式,不就是你硬编码能力不太行吗,最本质的不就是数据结构与算法不太行嘛,那问题来了,你说你会数据结构与算法,但为啥反复重复学习,不是调 API 就是调 API ,你把标准库常用的数据结构用熟悉了但是不能用语言实现出来,这叫会数据结构吗?
我的意思是有真正会数据结构与算法不,给你一篇算法相关论文没有伪代码的情况下你能用语言实现不,leetcode 或者给你任何一个问题你能很快用语言实现出来不,用数组或者链表可以实现各种数据结构不,不是知道个概念不能实现的假的会数据结构与算法。
Supplement 1 · Aug 26, 2023
欢迎友友们解惑,谢谢。
Supplement 2 · Aug 26, 2023
那问题来了,你们数据结构与算法真的功力不错,那按道理你们创造产出应该特别高啊,随便写个东西不是分分钟的事情,现实中一个二个都说真会,真要写个 mini (编译器、操作系统、框架、数据库各种部件之一,比如优化器)又不行了。如果不能写出一点像模像样的东西,算会吗?
17 replies • 2023-08-26 19:55:17 +08:00
 |
|
2
cassyfar Aug 26, 2023
你不会实现是怎么过的面试?现在面试不就是卷这些吗
|
 |
|
5
vtemp249 Aug 26, 2023 via Android
现在有 copilot 和 ChatGPT 辅助写代码,关键在于思想
|
 |
|
6
NonClockworkChen Aug 26, 2023
本质是人与人之间的智力差距大到无法想象的地步。 举个游戏的例子,炉石传说 朝神,我记得中美对抗的时候,老外好像都是数学爱好者或者从业人员类似这样的职业了,所以国内的顶尖主播前 3 个出场的根本打不过,全输了。然后朝神一穿三。
|
 |
|
7
106npo Aug 26, 2023 via Android
不考虑框架之类的东西,给个函数签名写代码,那确实一两天就能转换语言
|
 |
|
8
shakoon Aug 26, 2023 via Android
用自然语言描述算法那可太简单了(画 ppt )。但要转化成能运行的代码(做出能用的产品),那就是真正的技术能力了,大部分人确实是不具备的
|
 |
|
10
yinmin Aug 26, 2023 via iPhone
现在大都是打螺丝的岗位,不需要算法。真正卷算法的,都是初中/高中卷 noip 和 noi 的大牛。如果初中没卷过算法,工作了就背八股文面试用,工作中不要去和这群人卷算法。
前几年有一群高中疯子,全脱产 1 年,跟着名师卷算法,为了竞赛得奖能自招/直升大学。
如何识别算法大牛,就聊聊初中/高中的信奥,如果入集训队直升大学的,就是大牛中的大牛。
|
 |
|
11
sylxjtu Aug 26, 2023 via Android
楼主见识还是有待提升,不说 oi 和 acm 之类的,你写 leetcode 一些 hard 题也得用数组实现 finwick tree 和 segment tree
|
 |
|
12
yinmin Aug 26, 2023 via iPhone 1
卷算法的高中疯子,大都初中开始学信奥,高中全脱产 1 年只攻信奥,跟着名师卷算法,为了省一、入冬令营、进国集、直升北大清华,如果没卷进国集,也能自招入大学。
这群人都是科班学算法的,可惜 2020 取消大学自招改强基,就没这么疯狂了。
|
 |
|
13
20015jjw Aug 26, 2023 via iPhone
正经科班出来的 不是基操吗…… 起码 leetcode medium 学点套路肯定能举一反三吧….
|
 |
|
14
cassyfar Aug 26, 2023
@ wanderingaround 不叫,这种面试就挂了。现在面试一般至少 leetcode 一道 medium 写出来没 bug ,medium 难度就是 dfs ,bfs ,tree 这些。
|
 |
|
15
gpt5 Aug 26, 2023 via iPhone
准备竞赛时,各种算法题都能在白板上直接手写,报错算我输。
|
 |
|
16
geelaw Aug 26, 2023 1
楼主应该巩固一下现代汉语,0 楼的内容读起来很不连贯。
另外我觉得“掌握”“懂”是很虚的概念,即使考虑这个概念,“掌握”“懂”也可以分不同的等级。就我个人经验来说,“懂”和“可以用各种语言实现”数据结构和算法,可以是完全不相关的两码事儿,前者是计算机科学问题,后者是计算机技术/工程问题。
我小时候并不“理解”快速排序和并查集,但是了解任何语言的基础知识之后都可以很容易写出快速排序和并查集。我写快速排序至少两年之后才理解快速排序,而且我至今也不能算是理解了并查集——没有内化它的复杂度证明就不算是理解。
|