V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
AlpacaCode
V2EX  ›  Python

学习数据结构的语言推荐,很纠结,求指路

  •  
  •   AlpacaCode · 2020-03-05 23:41:46 +08:00 · 4552 次点击
    这是一个创建于 1484 天前的主题,其中的信息可能已经有所发展或是发生改变。

    没怎么用过 c 一般用的 python

    现在上班了,想重新补一下数据结构上的东西。一直在纠结用哪个语言。。

    25 条回复    2020-03-07 15:38:14 +08:00
    zhuangzhuang1988
        1
    zhuangzhuang1988  
       2020-03-05 23:45:35 +08:00
    书上是啥语言就用啥语言
    AlpacaCode
        2
    AlpacaCode  
    OP
       2020-03-06 00:00:29 +08:00
    @zhuangzhuang1988 有书推荐嘛。。最近搜了很多资料,有个 B 站的 Up 主推荐的是红宝石的算法书,是 java 写的 qaq
    yitl666
        3
    yitl666  
       2020-03-06 00:23:17 +08:00
    用 python 吧,习惯了新语言再写旧语言的语法还是蛮难受的,对于 Java 和 c 这种,只要看得懂就不影响学算法吧
    chenliangngng
        4
    chenliangngng  
       2020-03-06 00:26:50 +08:00
    Python 学数据结构不是挺好吗?米国不教 c 的大学,就是用 python 学数据结构
    jxie0755
        5
    jxie0755  
       2020-03-06 00:29:27 +08:00
    我学的时候用的是 python, 其实也完全 ok, 但是后来发现 python 由于没有一个自带的 Array 也就是数组结构, 所以有些针对数组的东西没能理解明白. 这个我当时都没有意识到, 后来学习 java 时再刷一些算法题时才发现.

    所以我还是推荐 java, 因为它是强类型, 而且语法比较严格. 虽然大家可能觉得用于干活特别繁琐, 但是实际上作为学习数据结构反而因为它语法繁琐而好理解一些. 而且我见过的大部分数据结构的比较优秀的书也常用 java 来教学.
    meefly
        6
    meefly  
       2020-03-06 00:29:57 +08:00   ❤️ 3
    数据结构强推邓公的数据结构,他的作业一定要写!!

    👉https://dsa.cs.tsinghua.edu.cn/~deng/ds/index.htm
    JerryCha
        7
    JerryCha  
       2020-03-06 01:23:15 +08:00
    python 足够的,基本能应付到进阶
    ericgui
        8
    ericgui  
       2020-03-06 01:42:51 +08:00
    java
    Yvette
        9
    Yvette  
       2020-03-06 01:45:02 +08:00
    没有基础知识的话用 C/C++ 挺好,有基础知识用啥都行
    x340
        10
    x340  
       2020-03-06 01:48:35 +08:00
    那就双修?你先 Python 看看呗,顺便 Java 看看
    wozhizui
        11
    wozhizui  
       2020-03-06 07:31:51 +08:00
    C 吧,大部分教材和教程都是 C
    zhuangzhuang1988
        12
    zhuangzhuang1988  
       2020-03-06 09:18:02 +08:00 via Android
    @AlpacaCode 那就看呗,java 又不难,而且算法用的 java 只是很少的一部分,
    rbq123456
        13
    rbq123456  
       2020-03-06 10:52:31 +08:00
    用 py 就行了,数据结构这东西,重点不是语言,是算法
    afpro
        14
    afpro  
       2020-03-06 11:50:44 +08:00
    算法不都是从《算法导论》开始的吗 看完之后可以考虑 leetcode 刷一点题巩固一下
    RangerWolf
        15
    RangerWolf  
       2020-03-06 12:04:58 +08:00
    C 打好基础无比重要
    yangzhezjgs
        16
    yangzhezjgs  
       2020-03-06 14:06:50 +08:00
    用 Python 学数据结构的话,可以看看这本 https://book.douban.com/subject/26702568/
    AlpacaCode
        17
    AlpacaCode  
    OP
       2020-03-06 15:42:58 +08:00
    @zhuangzhuang1988 的确不怎么难,大学比赛用过 c# 现在看 java 也差不多一个样子,就是很绕来绕去的选不好,因为后面想刷算法体,java 好像刷起来很麻烦?
    AlpacaCode
        18
    AlpacaCode  
    OP
       2020-03-06 15:43:40 +08:00
    好的感谢🙏
    AlpacaCode
        19
    AlpacaCode  
    OP
       2020-03-06 15:44:35 +08:00
    @RangerWolf 是的,主要 不经常用到 c 更多的是 py shell 这些。。
    AlpacaCode
        20
    AlpacaCode  
    OP
       2020-03-06 15:48:08 +08:00
    @jxie0755 其实我的打算也是你这样的一条线路,所以我如果边学边刷,遇到一些难理解的数据结构再去尝试下别的语言也是 ok 的咯?
    B1ankCat
        21
    B1ankCat  
       2020-03-06 23:34:00 +08:00
    现在在看算法导论,他用的伪代码其实就很好,不需要拘泥于语言本身
    jxie0755
        22
    jxie0755  
       2020-03-07 00:07:38 +08:00
    @AlpacaCode 没错, 学了两门语言以上你就会真正明白别人说的"语言只是工具并无高低了". 其实用 python 自己写一个 array 类也行, 但是一个初学者可能会觉得这么搞有点凌乱. Java 的好处我觉得就是严格严谨, 在学习时让你减少迷惑, 因为缺乏旁门左道的捷径方式, 确实更适合教学用
    jxie0755
        23
    jxie0755  
       2020-03-07 00:09:10 +08:00
    @AlpacaCode 更多时候我学 python 时只学明白了怎么用的东西, 到了学 java 后才知道为什么要这样,或者这样有什么好处和缺点, 这样理解就更完整了.
    AlpacaCode
        24
    AlpacaCode  
    OP
       2020-03-07 15:37:29 +08:00
    @B1ankCat 这样嘛,一直听他们说算法导论太深了,没必要去看,既然是伪代码我去尝试看一下
    AlpacaCode
        25
    AlpacaCode  
    OP
       2020-03-07 15:38:14 +08:00
    @jxie0755 好的感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   951 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 21:05 · PVG 05:05 · LAX 14:05 · JFK 17:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.