一.什么是数据结构
赫斌老师对数据结构赫算法的理解:哔哩哔哩(P29)
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合(官方)
狭义:数据结构是专门研究数据存储的问题(赫斌老师的理解)
广义:数据结构即包含数据的存储也包含数据的操作(赫斌老师的理解)
数据结构是存储数据的一种方式.(这是我的理解可能会有错误)
二.什么是算法
没有官方的....
算法是对存储数据的操作(赫斌老师)
狭义:算法是和数据的存储方式密切相关(赫斌老师)
广义:算法和数据的存储方式无关,这就是泛型思想(赫斌老师)
算法是解决问题的方法,就相当于排序就有很多方法一样(这是我的理解可能会有错误)
三.数据的存储结构
数据的存储结构简单可以分为:两种
1.线性存储
连续存储(数组)和离散存储(链表)
线性结构的应用---栈
线性结构的应用---队列
2.非线性存储
树和图
四.线性结构的优缺点(数组和链表两个对比的优缺点)
1.数组
优点:存取速度快(连续的)
缺点: 插入和删除速度慢(因为都是连续的,每插入或删除一个元素需要将它前面的数组向左或向右移动)
必须事先知道数组的长度
需要大块连续内存(内存必须连续)
2.链表
优点: 空间没有限制(只要电脑有足够的内存)
插入删除的速度快
缺点:存取速度慢(不连续)
网友评论