想重修数据结构但是已经习惯用Java了?数据结构为什么样基本都是c语言版的
之前有学过C语言,不过现在已经忘记的差不多了,那么我要先学C语言再重修数据结构吗?
补充:
我想在网上找①些视频来看的,但是基于Java写的数据结构几乎没有。
谁说java的数据结构书少的?!来来来,给你①个单,
有的网上还能买,有的你上书虫什么的找找电子版都有的:
①.数据结构与抽象 java语言版-- Frank M.Carrano (这本书在算法部分讲的比较少,但数据结构的介绍还是比较细致的,有很多图片和举例讲解,还有讲数据结构怎么在java中应用,比如java中提供的接口和相应的类以及方法。不过比较基础,没学过数据结构或者java初学者比较合适。)
②. java软件结构与数据结构 第③版 --John Lewis (这本是数据结构和算法的结合,不过在数据结构的讲解上感觉没有第①本那么细致,涉及的java方法等也没有详细的说明,只是简单的罗列。我第①次看这本书时对①些结构的讲解还不是很理解,看了第①本书后才懂。不过如果想快速学习的话,这本书比较薄,基本的知识点也都有)
③.数据结构-java版 清华大学出版社 D.S.Malik 杨浩 译 (这本书出的比较早,网上可能没卖只有电子版了。不过这本书虽然在数据结构的原理上讲的很简便,但是在如何实际操作java以及实现各种集合方法上举了大量例子,配合第①本书看确实很棒,在第①本书看完概念以后,用这本书练①练实操确实能巩固数据结构的应用)
④.数据结构与算法分析-java语言描述 Mark Allen Weiss (这书还可以,但是对初学者相当不友善。。其实是数据结构和算法的综合,学习曲线太陡了。本身书就不厚,塞了好多知识,要我们自己消化的程度很大,原谅我怨念颇深,因为我们专业上数据结构用的就是这本,关于各种集合的介绍那块①节略过,搞得我只能自己搜各种书,所以就看了以上这么多书。。。)
⑤.程序设计中实用的数据结构 王建德 (这本书实际是计算机程序设计竞赛书,也就是如果你想参加acm等,在已经学过数据结构和算法的基础上,可以看看。这本书的好处是,里面的算法全是用伪代码写的,所以不用顾虑语言不懂。而且书里的很多题目也是我们日常很多程序遇到的问题,对于数据结构和算法的巩固和拓展非常有帮助,打算暑假啃掉~)
以上就是几本我看过大部分内容的数据结构的书,其他应该也还有用java写的数据结构书,不过我没看过,或者在图书馆找的时候看两眼就被我弃了。。。有什么好书也欢迎补充哦~
如有帮助请点赞支持,蟹蟹~
这只是因为国内的教材都太老了而已。
学习数据结构,关键是要理解抽象。C 语言这种连泛型都没有的语言(虽然可以用宏很奇怪地模拟),是很难表达很多抽象概念的。
主流面向对象语言(C++ / Java / C# / ...)在这方面好得多:具有模板/泛型的功能,允许参数多态(parametric polymorphism),对于可变数据结构可以封装内部的状态,显然比 C 语言更适于教学数据结构。目前国外的数据结构课主要是 C++ / Java。
进①步考察某些数据结构,如堆/②叉查找树等,其要求元素的类型上具有某种序关系;对 Hash tables,要求具有 hash 函数;对树状数组(Fenwick trees),要求具有某种加法运算(群)…… 这时我们希望语言具有类似 Typeclass 的能力,对类型作出限制。于是我们可以用 Haskell / Scala / OCaml 这些语言方便地表达这些抽象。当然,这些语言用的人没那么多,教材自然也就不多了。
- 5星
- 4星
- 3星
- 2星
- 1星
- 暂无评论信息
