Data Structure:C Language Version

副标题:无

作   者:资讯教育小组编著

分类号:

ISBN:9787113047221

微信扫一扫,移动浏览光盘

简介

   数据结构是计算机科学中最重要的课程之一,编写计算机程序仅仅掌握语言是不够的,还必须掌握数据的组织、存储和运算方法。理解并掌握数据结构的原理,可以在设计时科学地选择数组、链表、栈、队列、二叉树、图等结构,有效地解决问题,也可以拓展开发视野,从而提高您的程序开发能力。由于数据结构的原理与算法比较拍象,很多读者难以掌握,而目前市面上有关数据结构的书籍一般不提供完整的算法,这样给读者带来很大的不便,故此我们引进台湾知城数位科技股份有限公司出版的《数据结构—C语言版》一书,它的突出特点就是算法完整、内容充实,包括:C语言与数据结构、数组与字符串、基本链表、复杂链表、栈与队列、递归函数、二叉树、图、查找方法、内部排序法、外部排序法、OOP与数据结构等,而且所有算法都用C语言编写,大多数读者比较容易上手。另外,本书的所有范例可以在我们的网站:http://www.tqbooks.com免费下载。    本书由台湾知城数位科技股份有限公司提供版权,经中国铁道出版社计算机图书项目中心审选,张滋文、童冠圣、李自运、陈贤淑、廖康良、陈小娟、孟丽花等同志完成了本书的整稿及编排工作。   

目录

第1章 c语言与数据结构

 1—1 数据结构的基础

 l—2 数据结构的抽象表示

 1—2—1 抽象化

 1—2—2 c语言的数据类型

 1—2—3 数据结构抽象化

 1—3 数据结构和算法

 1—4 结构化的程序规划

 1—4—1 结构化的重要性

 1—4—2 模块化

 1—4—3 自顶向下的设计方法

 1—5 设计风格

 1—5—1 使用有意义的变量和函数名称

 1—5—2 程序注释

 1—5—3 使用局部变量

 1—5—4 函数间的参数传递

 1—5—5 函数的模块化

 1—6 习题

第2章 数组与字符串

 2—1 内存静态分配

. 2—2 一维数组

 2—3 一维数组的访问

 2—4 一维数组的遍历

 2—5 二维数组

 2—6 数组的表示法

 2—6—l 以行为主或以列为主的表示方法

 2—6—2 指针数组的表示法

 2—7 稀疏矩阵

 2—8 字符串的存储方式

 2—9 字符串的基本处理

 2—9—1 字符串的拷贝

 2—9—2 字符串的连接

 2—9—3 字符串的替换

 2—9—4 字符串的插入

 2—9—5 字符串的删除

 2—9—6 字符串的比较

 2—9—7 提取子字符串

 2—10 字符串的高级处理

 2—10—1 字符串的对比

 2—10—2 字符串的分割

 2—11 习题

第3章 基本链表

 3—1 内存动态分配

 3—1—1 函数malloc()

 3—1—2 函数free()

 3—2 链表的创建

 3—2—1 动态数据结构的声明

 3—2—2 内存的分配

 3—2—3 基本链表的创建

 3—3 链表的遍历

 3—4 链表的链接

 3—5 链表内结点的删除

 3—6 释放链表的内存空间

 3—7 链表内结点的插入

 3—8 链表结构的反转

 3—9 使用头结点的链表

 3—10 习题

第4章 复杂链表

 4—1 循环链表结构

 4—1—1 循环链表的创建

 4—1—2 循环链表内结点的插入

 4—1—3 循环链表内结点的删除

 4—1—4 再论循环链表的插入和删除操作

 4—1—5 内存管理

 4—2 含头结点的循环链表结构

 4—2—1 处理多项式

 4—2—2 再论稀疏数组表示法

 4—3 双向链表结构

 4—3—1 双向链表的创建

 4—3—2 双向链表内结点的插入

 4—3—3 双向链表内结点的删除

 4—4 循环双向链表结构

 4—5 含头结点的循环双向链表结构

 4—6 习题

第5章 栈与队列

 5—1 使用数组结构创建栈

 5—2 使用链表创建栈

 5—3 表达式表示法的种类

 5—4 中序表达式的计算

 5—5 前序表达式的计算

 5—6 后序表达式的计算

 5—7 中序表达式转成后序表达式

 5—8 使用栈做回溯控制

 5—9 队列的应用

 5—10 使用数组结构创建队列

 5—11 循环队列

 5—12 使用链表创建队列

 5—13 双队列

 5—13—1 输入限制性双队列

 5—13—2 输出限制性双队列

 5—14 习题

第6章 递归函数

 6—1 递归的基础

 6—2 递归函数的内部处理过程

 6—2—l 一般函数的调用

 6—2—2 递归函数的调用

 6—2—3 递归函数的实际处理过程

 6—3 递归的链表创建和输出

 6—4 汉诺塔问题

 6—5 走迷宫问题

 6—6 n皇后问题

 6—7 习题

第7章 二叉树

 7—1 树的基本概念

 7—2 二叉树的基本概念

 7—3 二叉树的表示法

 7—3—1 二叉树数组表示法

 7—3—2 二叉树结构数组表示法

 7—3—3 二叉树链表结构表示法

 7—4 二叉树的遍历

 7—4—1 中序遍历方式

 7—4—2 前序遍历方式

 7—4—3 后序遍历方式

 7—5 二叉树的递归创建法

 7—6 二叉树的查找方法

 7—7 二叉树内结点的删除

 7—8 二叉树的复制

 7—9 线索二叉树

 7—10 树的二叉树表示法

 7—11 树的应用:处理表达式

 7—12 习题

第8章 图

 8—1 图的基础

 8—2 图的表示法

 8—2—1 邻接矩阵表示法

 8—2—2 邻接表表示法

 8—2—3 邻接多重表表示法

 8—3 图的遍历

 8—3—1 深度优先搜索法

 8—3—2 广度优先搜索法

 8—4 图的路径表示法

 8—5 最短路径的求法

 8—5—1 一个顶点到多顶点

 8—5—2 各顶点到其他顶点的求法

 8—6 图的拓扑排序

 8—7 生成树

 8—8 最小生成树

 8—9 习题

第9章 查找方法

 9—1 程序计数的原理

 9—2 函数o()———bigoh

 9—3 查找的基础

 9—4 顺序查找法

 9—5 折半查找法

 9—6 斐波纳契查找法

 9—7 插补查找法

 9—8 二叉查找树查找法

 9—9 散列查找法

 9—9—1 散列函数

 9—9—2 线性探测法

 9—9—3 拉链法

 9—10 习题

第10章 内部排序法

 10—1 排序的基础

 10—2 冒泡排序法

 10—3 选择排序法

 10—4 插入排序法

 10—5 希尔排序法

 10—6 快速排序法

 10—7 二叉查找树排序法

 10—8 堆排序法

 10—9 习题

第11章 外部排序法

 11—1 外部排序法

 11—2 归并排序法

 11—3 直接归并排序法

 11—4 文件的快速排序法

 11—5 习题

第12章 00p与数据结构

 12—1 00p面向对象的基础

 12—1—1 对象的基本概念

 12—1—2 面向对象的程序分析

 12—1—3 面向对象程序语言

 12—2 c++的类与对象

 12—2—1 c++的标准输出与输入

 12—2—2 类与对象

 12—2—3 类的构造函数

 12—2—4 类的析构函数

 12—3 字符串类实现

 12—4 链表类实现

 12—5 栈类实现

 12—5—1 数组栈类实现

 12—5—2 链表栈类实现

 12—6 二叉树类实现

 12—7 习题

附录a 常用字符与ascii代码对照表

附录b 习题解答


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Data Structure:C Language Version
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon