数据结构和算法(01)之综述
2016-03-12 22:05
246 查看
本章重点
数据结构和算法能起到什么作用?数据结构的概述
算法的概述
一些定义
面向对象编程
软件工程
对于c++程序员的java
java数据结构的类库
一、数据结构和算法能起到什么作用?
数据结构是对在计算机内存中(有时在磁盘中)的数据的一种安排。 数据结构包括数组、链表、栈、二叉树、哈希表等
现实世界数据存储
程序员工具
建模
二、数据结构的概述
数据结构的特性数据结构 | 优点 | 缺点 |
---|---|---|
数组 | 插入快,存取快 | 查找、删除慢,大小固定 |
有序数组 | 比无序数组查找快 | 查找、删除慢,大小固定 |
栈 | 后进先出 | 存取其它项很慢 |
队列 | 先进先出 | 存取其它项很慢 |
链表 | 插入、删除快 | 查找慢 |
二叉树 | 查找、插入、删除都快(如果保持树平衡) | 删除算法复杂 |
红-黑树 | 查找、插入、删除都快(树总是平衡的) | 算法复杂 |
2-3-4树 | 查找、插入、删除都快(树总是平衡的)类似的树对磁盘存储有用 | 算法复杂 |
哈希表 | 若关键字已知则存取极快,插入快 | 删除慢,若不知道关键字则存取极慢,对存储空间使用不充分 |
堆 | 插入、删除快,对最大数据项存取很快 | 对其他数据项存取慢 |
图 | 对现实世界建模 | 有些算法慢且复杂 |
三、算法的概述
需要知道如何插入一条新的数据项
寻找某一特定的数据项
删除某一特定的数据项
另一种算法使用范畴
排序
四、一些定义
数据库(database)
记录(record)
字段(field)
关键字
五、面向对象编程
过程性语言问题
程序与现实世界缺乏对应关系程序内部结构出了问题
对象简述
对象类
创建对象
一个能运行的面向对象程序
继承与多态
六、软件工程
七、对于c++程序员的java
八、java数据结构的类库
小结
数据结构是指数据在计算机内存空间中或磁盘中的组织形式正确选择数据结构会使程序的效率大大提高
数据结构的例子有数组、栈、链表
算法是完成特定任务的过程
在java中,算法经常通过类的方法实现
一些数据结果的用途是作为程序员的工具,它们帮助执行算法
其它数据结构可以模拟现实世界中的情况。例如,城市之间的电话线网
数据库是指由许多类似的记录组成的数据存储集合
一条记录经常表示现实世界中的一个事物,例如一名雇员或一个汽车零件
一条记录被分成字段。每个字段都存储由这个记录所描述事物的一条特性
一个关键字是一条记录的一个字段,通过它可以对数据执行许多操作。例如,人事记录可以通过lastname字段进行排序
QQ交流群:217803006
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树