C语言 版 数据结构
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 版 数据结构相关的知识,希望对你有一定的参考价值。
请问大家 关于C语言 版的 数据结构 哪个版本号呢?严蔚敏讲解的?
数据结构:作 者:杨开城 编著
出 版 社:电子工业出版社
出版时间:2008-9-1
印次:1I S B N:9787121067556包
本书通过大量的图解和示例,介绍了有关数据结构的基本概念、原理和算法,包括集合、线性表、树和图的数据类型定义、数据对象的基本操作以及这些操作的应用范例。此外,本书还详细解释了数据结构中经典算法的基本思想和算法细节,包括括号匹配检查算法、算术表达式求值算法、迷宫路径求解算法、递归问题的非递归算法、迷宫最短路径的求解算法、字符串模式匹配的KMP算法、线索化二叉树算法、哈夫曼编码算法、图的关节点求解算法、连通网的最小生成树算法、图的最短路径求解算法、有向无环图的拓扑排序和关键路径求解算法。本书的最后两章,重点介绍了常见的查找和排序算法。查找算法包括有序顺序表的折半查找、斐波那契查找以及二叉排序树、平衡二叉树、B-树的插入删除算法;排序算法包括插入排序(含直接插入排序、二路插入排序和希尔排序)、交换排序(含起泡排序和快速排序)、选择排序(含树形排序和堆排序)、索引排序及其物理重排、计数排序及其物理重排、归并排序、链式基数排序以及外排序的基本算法思想。
本书既适合计算机专业的本科生和大专学生使用,又适合非计算机专业的本科和大专学生以及数据结构自学者使用。
现在可能有更新的,本人已用过,很好。讲解详细而不拖沓,绝对物超所值。 参考技术A 数据结构:C语言版/严蔚敏,吴伟民编著. —北京:清华大学出版社,1997.4
ISBN 978-7-302-02368-5
数据结构c语言版和java版有啥不同
数据结构c语言版和java版有什么不同
数据结构本身是一种逻辑上的概念,它是独立于特定语言或者实现的比如说链表,概念上说就是一组结点构成的数据结构,其中每个结点均带有后续结点信息。各种语言都可以实现链表,但实现的思路都是基于上面的逻辑概念。
因此,学习数据结构不必拘泥于某种特定语言,归根结底是要把握每个数据结构(逻辑上)的精髓
在这个基础上,每种语言都可以实现特定的数据结构,差别只在于语法实现级别。
另外虽然Java/C++等语言都带有大量的标准类库,但这并不意味着可以忽视数据结构基础理论的学习。这直接关系到实际应用时,是只能死板套用现成模板,还是灵活应用各种结构高效实现需求。 参考技术A 学C语言的必须要懂数据结构因为基本上所有的都要你自己写,而JAVA已经把很多算法都已经帮你写好了所以,学JAVA对数据结构的要求并不高,所以可能数据结构C语言版的要求高一点更全一点,我学的数据结构就是C语言版的。。。本回答被提问者采纳 参考技术B 没什么不同,数据结构是一种计算机数学逻辑
C语言实现的版本,很简单就是利用数组和指针来完成数据结构
Java版本的,因为最常见的是类,所以只好用各种类和枚举来完成数据结构 参考技术C 1.数据结构和算法简介
数据结构是指数据在计算机存储空间中的安排方式,而算法是指软件程序用来操作这些结构中的数据的过程。
2.数据结构和算法的重要性
几乎所有的程序都会使用到数据结构和算法,即便是最简单的程序也不例外。比如,你希望打印出学生的名单,这个程序使用一个数组来储学生名单,然后使用一个简单的for循环来遍历数组,最后打印出每个学生的信息。
在这个例子中数组就是一个数据结构,而使用for循环来遍历数组,则是一个简单的算法。可见数据结构和算法是构成程序的灵魂所在,而且也有人提出数据结构+算法=程序。
3.为什么选择Java语言来描述数据结构和算法?
Java语言相比C和C++语言都要简单而且目前非常流行。有些朋友肯定会提出疑问,Java语言没有指针怎么能偶构建复杂的数据结构,事实上Java语言来构建复杂数据结构比使用其他如C、C++更为简单,而且还将给程序提供更高的安全性和更少的出错机会。
4.学习Java数据结构和算法需要哪些基础?
首先需要了解Java的基础语法,还必须对面向对象编程有所了解。当然这部分内容在我们的培训课程中将涉及到,请大家认真学习。
5.Java提供了容器类以及其他的工具类,还需要学习数据结构和算法吗?
很多朋友都存在这样的疑问,觉得Java中的数据结构和算法不是特别重要。其实这个是个误区,大家不要看到市面上的书籍以及视频很少会涉及到Java数据结构和算法的内容就觉得它不重要,其实它很重要。如果你只是想成为一个Java初级程序员,你可以不去了解它,你知道如何使用Java中的容器类来完成自己的应用就可以了。但是如果你想成为一个Java中级或者高级程序员,数据结构和算法的知识是必不可少的。我相信大家都不会满足于使用容器类,而是希望能够了解其原理完善自己的应用。
一般c对数据结构的了解要求更高,java或者.net都有自己的类库。比如java的类库里面的东西就是sun公司的人员给你封装好了的,你想用链表么得就有类似的类直接可以用。但是c语言/c++的一般是要手动编写。但是了解数据结构还是很有好处的,一定程度上可以帮助你去了解java中的某些类。
摘选了一下目录的一部分:
3.3.1 Collection接口
3.3.2 Iterator接口
3.3.3 List接口、ArrayList类和LinkedList类
3.3.4 例:remove方法对LinkedList类的使用
3.3.5 关于ListIterator接口
3.4 ArrayList类的实现
可以看到,这些类都是java封装好类,直接可以拿来用。而java版本的数据结构就是告诉你这些类的内部实现。一般编程人员也不需要了解太多,当然了解了更好。
以上是关于C语言 版 数据结构的主要内容,如果未能解决你的问题,请参考以下文章