数据结构与算法Python语言描述.pdf
http://www.100md.com
2020年11月4日
![]() |
| 第1页 |
![]() |
| 第7页 |
![]() |
| 第15页 |
![]() |
| 第23页 |
![]() |
| 第34页 |
![]() |
| 第305页 |
参见附件(90280KB,359页)。
数据结构与算法Python语言描述基于Python语言介绍了数据结构与算法的基本知识,主要内容包括抽象数据类型和Python面向对象程序设计、线性表、字符串、栈和队列、二叉树和树、集合、排序以及算法的基本知识。本书延续问题求解的思路,从解决问题的目标来组织教学内容,注重理论与实践的并用。

本书简介
21世纪以来,Python已经发展成为世界上最受欢迎的编程语言之一,使用非常广泛。由于其各方面的优点,Python正在被世界上越来越多的大学用作第一门程序设计课程的语言,更多学校把它作为后续或选修课程的内容。国内也开始出现这种情况。作者从几年前开始基于Python语言讲授数据课程,本书基于作者的教学经验和体会编写而成。
本书结合抽象数据类型结构的思想,基于Python的面向对象机制,阐述了各种基本数据结构的想法、性质、问题和实现,讨论一些相关算法的设计、实现和特性。书中还结合研究了一些数据结构的应用案例。
本书加强了一些目前程序设计实践领域特别关注的内容,包括程序和数据结构设计中的安全性问题、正则表达式的概念和使用等。书中提供了大量编程练习题,特别关注数据结构的设计和实现技术,以及实际应用中的各方面问题。
本书要求学习者已有基本Python程序设计的知识和经验,可以作为基于Python的计算机基础课程中的数据结构课程教材,也可以作为学习了Python语言基本内容之后的一本面向对象等高级编程技术的进阶读物。
作者介绍
裘宗燕,北京大学数学学院信息科学系教授。长期从事计算机软件与理论、程序设计语言和符号计算方面的研究与教学工作。已出版过多部著作和译著,包括《程序设计语言基础》【译著,北京大学出版社,1990),《Mathematics数学软件系统的应用与程序设计》(编著,北京大学出版社,1994),《C++程序设计语言(特别版)》(译著,机械工业出版社,2002),《C++语言的设计和演化》(译著,机械工业出版社,2002),《程序设计语言-概念和结构》(合译,机械工业出版社,2002),《从问题到程序-程序设计与C语言引论》(编著,机械工业出版社,2005年第1版,2011年第2版)等。
本书说明
Python是目前国际上流行的用于教授第一门程序设计课程的语言,国内高校也开始使用。本书是结合国内数据结构课程现状,采用Python作为工作语言,全新编撰的一本数据结构救程。书中结合抽象数据类型结构的思想,基于Python的面向对象机制,阐述各种基本数钢结构的性质、问题和实现,讨论一些相关算法的设计、实现和特性。书中还结合研究了一些数据结构的应用案例。
本书要求学习者已有基本Python程序设计的知识和经验,可以作为基于Python的计算机基础课程中的数据结构课程教材,也可以作为学习Python语言基本内容之后的一本面向对象等高级编程技术的进阶读物。
计算机问题求解
使用计算机是为了解决实际问题。计算机具有通用性,其本身的功能很简单,就是能执行程序,按程序的指示完成一系列操作,得到某些结果,或者产生某些效果。要想用计算机处理一个具体问题,就需要有一个解决该问题的程序。经过长期努力,人们已经为各种计算机开发了许多有用的程序。在面对一个需要解决的问题时,如果恰好有一个适用的程序,事情就很方便了:运行这个程序,让它去完成所需工作。
实际中的计算需求无穷无尽,不可能都有现成的程序。如果面对一个问题,但没有适用的程序,可能就需要编写一个。一般而言,人们需要的不是解决一个具体问题的程序,而是解决一类问题的程序。例如,一个文本编辑器不应该只能编辑出一个具体的文本文件,而应该能用于编辑各种文本文件;Python解释器不是只能执行一个具体的Python程序,而是可以执行所有可能的Python程序。对于求平方根这样的简单问题,人们希望的也不是专用于求某个数
(例如2)的平方根的函数,而是能求任何数的平方根的函数。求平方根是一个问题,求2的平方根是求平方根问题的一个实例。人们开发(设计,编写)一个程序,通常是为了解决一个问题,该程序的每次执行能处理该问题的一个实例。
简言之,用计算机解决问题的过程分为两个阶段:程序开发者针对要解决的问题开发出相应的程序,使用者运行程序处理问题的具体实例,完成具体计算(实际上,是计算机按程序的指示完成计算。为简单起见,人们常说程序完成计算,这样说不会引起误解)。开发程序的工.
作只要做一次,完成的程序可以多次使用,每次处理一个问题实例。当然,对于复杂的程序,完成后通常还需要修改完善,消除错误,升级功能。但这些是后话,无论如何,用计算机解决问题的第一步是开发出能解决问题的程序。
数据结构与算法Python语言描述截图



您现在查看是摘要介绍页, 详见PDF附件(90280KB,359页)。





