Data Structures(数据结构) Course 0:Introduction

Download Report

Transcript Data Structures(数据结构) Course 0:Introduction

Data Structures(数据结构)
Course 0:Introduction
 Teacher Information
Name:
Email :
Office:
Office Tel:
Office Hour:
QQ :
西南财经大学天府学院
2
Teaching Material
Text Book
Data Structures: A Pseudocode Approach with C++
Richard F. Gilberg and Behrouz A. Forouzan.
Reference Book
Data Structures & algorithm analysis in C++(second edition)
Mark Allen Weiss
数据结构(C语言版).严蔚敏,吴伟民.
西南财经大学天府学院
3
Study Highlight
Algorithm, Time Complexity(算法与时间复杂度)
Recursion(递归)
Array(数组)
Link list(链表)
Stack and Queue(堆栈与队列)
Tree and Binary Tree(树与二元树)
Graph(图)
Search and Hashing(搜寻与哈希)
Sort (排序)
Advanced Tree(高等树)
西南财经大学天府学院
4
Schedule
Introduction
Linked Lists
Searching
Stack
Queue
Recursive
Tree
Advaned Sorting
Graph
西南财经大学天府学院
5
Score Component
平时成绩占50分
Rate of attendence (10%)
迟到一次扣一分,旷课三次以上(含三次)取消考试资
格
Regular Performance(40%)
Terminal Examination(50%)
西南财经大学天府学院
6
Study Purpose about Data Structure
算法与数据结构是计算机科学的两大支柱
计算机科学早期定义为:研究算法的科学
近期定义为:研究数据的科学
数据结构是程序设计的基础
是计算机科学中一门综合性专业课程
西南财经大学天府学院
7
Study Purpose about Data structure
Program=Data Structure +Algorithm
使用最适当的【数据结构】,才能够设计出最有效率的【算法】,
进而转换成为有效率的【程序】。
西南财经大学天府学院
8
Study Purpose about Data Structure
数据结构课程的三级标准
1. 掌握各类基本数据结构类型和相应的存
储结构(Lowest Level)
2. 提高阅读和编写算法的能力
3. 能针对给定问题,选择相适应的数据结
构,并能设计和分析算法
西南财经大学天府学院
9
Data Structure Mainly Content
例1:87352545610074510103780618748
87352545 杂乱的数据不能表达和交流信息
电子商务学院电话号码
结论1.
610074电话号码簿
西南财经大学邮编
例2:
(a1,b1) (a2,b2)…(an,bn)
其中: ai为某人姓名,bi为该人的电话号码。
510103780618748
身份证号码
要求:设计一个算法,给定一个姓名时,能查出此人的电话号
码。
数据之间是有联系的
•结论2.
如果姓名和电话号码的排列次序无规律,
这些联系常常影响算法的选择和效率。
则只能逐一比较姓名进行查找
《DS》就是要研究数据之间的联系。
• 如果姓名按字典顺序组织,则查找就快捷多了
西南财经大学天府学院
10
Data Structure Mainly Content
例3:大学学生管理机构
西南财经大学天府学院
金融
...
06级
信息
07级
本科
张三
结论3.
...
08级 …
专科
李四
数据之间是有结构的
例3中数据之间呈分层结构(树状结构)
《DS》就是要研究数据之间的各类结构。
西南财经大学天府学院
11
Data Structure Mainly Content
例4:图书目录管理
设每个书目含:书名,作者,登录号,分类,出版
年月
对图书目录常有如下操作:
查找:某书在书库中是否存在?
插入:购进新书时的登录;
删除:报废或丢失的书,需从目录中去掉;
结论4. 在某种数据结构上可定义一组运算
《DS》要研究各类数据结构上的各种运算。
西南财经大学天府学院
12
Data Structure Mainly Content
综上所述: 《DS》主要研究内容:
数据的各种逻辑结构和物理结构,以及它们
之间的相应关系;
对每种结构定义相适应的各种运算;
设计出相应的算法;
分析算法的效率。
常见的数据结构有:表(lists) 、数组(arrays)、
栈(stacks)、队列(queues)、树(trees)、图(graphs) 、
串(string) 和文件(files)等。
方法:查找(search)、排序(sort)
西南财经大学天府学院
13
Program design
程序被设计来帮人们处理繁复的工作或解决问题
程序是由一堆指令所组成的,它能准确地帮我们完成工作,回
复正确的答案
程序设计的重点在于“逻辑”而不在“指令”
What is program design logic
1.如何将问题准确地转换成程序的思考能力
2.计算机解决问题的流程
要完全了解问题,才能写出准确的程序
西南财经大学天府学院
14