type
status
date
tags
category
icon
password
数据结构与算法
可以容纳数据的结构被称为数据结构 静态
算法是用来对数据结构进行处理的方法 动态
一维数据结构:(线性数据结构)
线性的数据结构强调存储与顺序
数组
数组特性:
1.存储在物理空间上是连续的
2.底层的数组长度是不可变的
3.数组的变量,指向了数组的第一个元素的位置
优点:查询性能好(指定查询某个位置)
缺点:
1.因为空间必须是连续的,所以如果数组比较大,当系统的空间碎片较多时,容易存不下
2.因为数组的长度是固定的,所以数组的内容难以被添加和删除
链表
想传递一个链表,必须传递链表的根节点
每一个节点,都认为自己时=是根节点。
链表特性:
1.在空间上不是连续的
2.每存放一个值都要多开销一个引用空间
优点:
1.只要内存足够大就能存的下,不用担心空间碎片问题
2.链表的添加和删除非常的容易
缺点:
1.查询速度慢(指的查询某个位置)
2.每一个节点都需要创建一个指向next的引用,浪费一些空间
当节点内数据越多的时候,这部分开销的内存影响越少
线性数据结构的遍历
遍历:将一个集合里的每一个元素进行获取并查看;
循环遍历
递归遍历(必须有出口)
链表的逆置
冒泡排序
选择排序
简单快速排序
标准快速排序
- Author:杨敢敢
- URL:http://preview.tangly1024.com/article/1b0ac6ee-e22b-800a-bb24-fbafb5561478
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!