02、数据结构与算法 - 基础:链表
1. 链表 线性表的链式存储结构就是用一组任意的存储单元(可以是不连续的)存储线性表的数据元素。 采用链式存储结构的表示的线性表简称链表。 链式存储方式可用于表示线性结构,也可用于表示非线性结构。 链表通常有两个域 data域——存放结点值...
1. 链表 线性表的链式存储结构就是用一组任意的存储单元(可以是不连续的)存储线性表的数据元素。 采用链式存储结构的表示的线性表简称链表。 链式存储方式可用于表示线性结构,也可用于表示非线性结构。 链表通常有两个域 data域——存放结点值...
1. 线性表的定义 1、 线性表L是n(n≥0)个具有相同属性的数据元素a1,a2,a3,…,an组成的有限序列,其中序列中元素的个数n称为线性表的长度。 2、 当n=0时称为空表,即不含有任何元素。 3、 常常将非空的线性表L(n>...
公众号:“皇子谈技术”主理人
1、插值查找 插值查找是根据查找关键字与查找表中最大最小关键字比较后的查找方法。插值查找基于二分查找,将查找点的选择改进为自适应选择,提高查找效率 2、插值查找基本思想 插值查找类似平时我们查字典的时候,查一个以 s 开头的单词时,绝对不会...
查找算法 常用的查找算法有: 顺序(线性)查找 二分查找(折半查找) 插值查找 斐波那契查找 1、二分查找算法 1.1 二分查找思路分析 二分查找的条件: 查找的数量只能是一个,从指定一组数据中查找一个需要的数据 二分查找用于查找的数据,逻...
1、基数排序介绍 基数排序(radix sort)属于 “分配式排序” (distribution sort),又称为 “桶子法”(bucket sort),或者 bin sort,它通过把要排序的元素分配到一些桶中,进行排序。 基数排序属...
1、归并排序介绍 归并排序(Merge Sort)是利归并的思想实现的一种有效,稳定的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,...
1、快速排序介绍 快速排序(QuickSort)是对冒泡排序算法的一种改进,快速排序算法通过多次比较和交换来实现排序。 2、快速排序基本思想 选一个 pivot 中心轴,将大于 pivot 的值放到 pivot 右边,小于 pivot 的值...
1、希尔排序介绍 希尔排序(Shell`s Sort) 是插入排序的一种,也叫作 “缩小增量排序”(Diminishing Increment Sort),由 D.L.Shell 在 1959 年提出,是直接插入排序算法的一种更高效的改进版...
1、插入排序介绍 插入排序属于内部排序法,一般也被称为直接插入排序,对于少量元素排序来说是一个有效的算法。它是对要排序的元素以插入的方式找到元素的适当位置,达到排序的目的 2、插入排序思想: 把n个要排序的元素看成为一个有序表和一个无序表,...
1、选择排序基本介绍 选择排序(select sorting)是一种简单的排序方法,它的原理是:从需要排序的数据中,按照指定规则选出某一元素,再按照规定交换位置达到排序的目的。选择排序是不稳定的排序方法 选择排序时间复杂度 选择排序的交换操...