Algorithms 算法
Data Structure 数据结构
Abstract Data Types 抽象数据类型
Programming with Lists and Sets
1. 算法是解决特定问题的分步过程
2. 算法举例:
求 GCD:
p = 77 q = 21
p % q == 14
p = 21 q = 14
p % q == 7
p = 14 q = 7
p % q == 0
则 q = 7 为 GCD 最小公因数
3. Algrithms vs programs
- Algorithms:
- can be performed by humans or machines
- may be expressed in any suitable language
- may be as abstract as we like
- Programs:
- can be performed only by machines
- must be expressed in a programming language
- must be detailed and specific
4. 数据结构
数据结构是组织数据集合的系统方法
静态数据结构是指初次创建时,容量就已经确定的数据结构,如 array
动态数据结构是指容量可变的数据结构,可以随时扩展和收缩,如链表和二叉树
对每种数据结构要进行的基本操作都是 insertion,deletion,searching
5. 抽象数据类型
抽象数据类型是一种数据类型,其表示形式是私有的,因此与应用代码无关
如 String,array,set
当我们写程序的时候,我们不需要考虑 String,array,set 是怎样表现出来的,不需要计较为什么是表现的,只需要声明其变量,并使用其方法
如:我们不需要计较为什么 String 是这样的字体大小,我们只需要声明 String 变量,并用方法去设定其字体大小即可
字符串抽象数据结构 表抽象数据结构 表抽象数据结构(续) 集合抽象数据结构 集合抽象数据结构(续)(1)集合的中元素有默认的排列顺序,不会因为加入或删除的先后顺序而改变
(2)集合中的元素没有重复的
网友评论