Gustavo
分块查找 分块查找
分块查找(Block Search)实现概念介绍分块查找是一种 改进的顺序查找方法,适用于 静态数据,即数据不频繁增删的情况。它的基本思想是 将有序数据分成若干块,然后进行两步查找: 索引查找(块定位):使用索引表快速定位元素所在的块。
2025-02-27
折半查找 折半查找
折半查找(Binary Search)折半查找(也称二分查找)是一种在 有序数组 中查找目标值的高效算法。它的基本思想是: 每次取数组的中间元素,与目标值进行比较。 如果目标值小于中间元素,则查找范围缩小到左半部分; 如果目标值大于中间元
2025-02-27
顺序查找 顺序查找
顺序查找(Sequential Search)顺序查找(又称线性查找,Linear Search)是一种最简单的查找算法。它的基本思想是 从数据序列的第一个元素开始,依次与目标值进行比较,直到找到匹配项或遍历完整个序列。 1. 顺序查找的
2025-02-27
树与森林 树与森林
双亲表示法定义一个数组,数组中存放输的节点,每个节点包含数据域与双亲域。 双亲域表示当前节点的双亲的在数组中的下标 typedef struct PTNode{ ElemType data; int parent; }PTN
2025-02-27
外部排序 外部排序
外部排序(External Sorting)1. 什么是外部排序?当数据太大,无法一次性加载到内存时,需要使用外部存储(如磁盘)进行排序,称为外部排序。 2. 外部排序的核心思想 分块排序(分段排序):先将大文件分成多个可以放入内存的小块,
2025-02-27
内部排序 内部排序
内部排序(Internal Sorting)内部排序 指的是在**主存(内存)**中进行的排序,所有数据都能存储在内存中进行排序操作,不需要借助外部存储(如磁盘)。 内部排序的常见算法包括: 插入排序(Insertion Sort) 选择
2025-02-27
基数排序 基数排序
基数排序(Radix Sort)基数排序是一种非比较型排序算法,它通过按位对数字进行排序,通常用于对整数进行排序。它将所有数字看成是按位数划分的,每一位上的数字单独参与排序。基数排序分为两类:LSD(Least Significant Di
2025-02-27
归并排序——内排序方式 归并排序——内排序方式
引言归并排序(Merge Sort)是一种分治法(Divide and Conquer)排序算法,它将一个大的数组分解为多个小的子数组,再通过合并操作将这些子数组有序地合并成一个最终的有序数组。 归并排序的实现原理归并排序的核心思想是将一个
2025-02-27
选择排序 选择排序
选择排序(Selection Sort)1. 选择排序原理选择排序(Selection Sort)是一种简单直观的排序算法,基本原理如下: 寻找最小值:在未排序的部分中,找到最小的元素。 交换最小值与当前元素:将其与当前未排序部分的第一个
2025-02-27
交换排序 交换排序
交换排序(Exchange Sort)交换排序是一类通过交换元素位置来完成排序的排序算法,主要包括 冒泡排序(Bubble Sort) 和 快速排序(Quick Sort)。这两种排序算法都是基于交换的思想,不需要额外的存储空间,因此在内存
2025-02-27
5 / 7