3.14学习总结 排序算法

news/2025/3/15 8:36:11/

插入排序:

1.直接插入排序

维护一个有序区,把元素一个个插入有序区的适当位置,直到所有元素都有序为止。

for (int i = 0;i < n - 1;i++) {//升序int end = i;int temp = k[end + 1];while (end >= 0) {if (temp < k[end]) {k[end + 1] = k[end];}else {break;}end--;}k[end + 1] = temp;
}

2.折半插入排序  二分法查找插入位置

3.希尔排序

void shellsort(int* arr, int n) {int gap = n;while (gap > 1) {gap = gap / 2;for (int i = 0;i < n - gap;i++) {int end = i;int tem = arr[end + gap];while (end >= 0) {if (tem < arr[end]) {arr[end - gap] = arr[end];end -= gap;}else {break;}}arr[end + gap] = tem;}}
}

交换排序:

1.冒泡排序

for (int i = 0;i < n - 1;i++) {//从小到大排序for (int j = 0;j < n - 1 - i;j++) {if (a[j] > a[j + 1]) {t = a[j];a[j] = a[j + 1];a[j + 1] = t;}}
}

2.快速排序

int a[1000], n;//需要排序的数,以及总数
void quicksort(int left, int right) {int i, j, t, temp;if (left > right) {return;}temp = a[left];i = left;j = right;while (i != j) {while (a[j] >= temp && i < j) {j--;}while (a[i] <= temp && i < j) {i++;}if (i < j) {t = a[i];a[i] = a[j];a[j] = t;}}a[left] = a[i];a[i] = temp;quicksort(left, i + 1);quicksort(i + 1, right);return;
}

选择排序:

1.简单选择排序

2.树形选择排序

3.堆排序

归并排序:

基数排序:

1.多关键字排序

2.链式基数排序

外部排序:

1.外部排序的基本办法

2.多路平衡归并的实现

3.置换—选择排序

4.最佳归并树

(有代码的已学。

 


http://www.ppmy.cn/news/1579269.html

相关文章

基于深度学习的多模态人脸情绪识别研究与实现(视频+图像+语音)

这是一个结合图像和音频的情绪识别系统&#xff0c;从架构、数据准备、模型实现、训练等。包括数据收集、预处理、模型训练、融合方法、部署优化等全流程。确定完整系统的组成部分&#xff1a;数据收集与处理、模型设计与训练、多模态融合、系统集成、部署优化、用户界面等。详…

VSTO(C#)Excel开发9:处理格式和字体

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…

配置安全网站

配置网站 确定是Debian系统 更新索引&#xff1a;apt update 安装包&#xff1a;apt upgrade -y 查看nginx状态&#xff1a;systemctl status nginx 安装&#xff1a;nginx&#xff1a;apt install nginx 启动&#xff1a;systemctl start nginx 在/var/www/里面创建一个…

卷积神经网络 - 一维卷积、二维卷积

卷积(Convolution)&#xff0c;也叫褶积&#xff0c;是分析数学中一种重要的运算。在信号处理或图像处理中&#xff0c;经常使用一维或二维卷积&#xff0c;本博文我们来学习一维卷积和二维卷积。 理解一维卷积和二维卷积的核心在于把握维度对特征提取方式的影响。我们从数学定…

AVL树的平衡算法的简化问题

AVL树是一种紧凑的二叉查找树。它的每个结点&#xff0c;都有左右子树高度相等&#xff0c;或者只相差1这样的特性。文章https://blog.csdn.net/aaasssdddd96/article/details/106291144给出了一个例子。 为了便于讨论&#xff0c;这里对AVL树的结点平衡情况定义2个名称&#…

Java 大视界 -- Java 大数据在智能教育虚拟实验室建设与实验数据分析中的应用(132)

&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎来到 青云交的博客&#xff01;能与诸位在此相逢&#xff0c;我倍感荣幸。在这飞速更迭的时代&#xff0c;我们都渴望一方心灵净土&#xff0c;而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识&#xff0c;也…

P6772 [NOI2020] 美食家

训练角度&#xff1a;图上的状态转移&#xff0c;倍增 → \rightarrow → 优化状态转移&#xff1b; ▍ 题意 精灵王国共有 n n n 座城市&#xff0c;城市从 1 1 1 到 n n n 编号&#xff0c;其中城市 i i i 的美食能为小 W 提供 c i c_i ci​ 的愉悦值。精灵王国的城市…

市场价格波动的影响因素及交易策略优化

市场价格波动的影响因素及交易策略优化 在市场交易过程中&#xff0c;价格波动是不可避免的现象。不同的交易者会基于市场走势、技术分析和资金管理制定不同的交易策略。本文将分析市场价格波动的关键影响因素&#xff0c;并探讨优化交易策略的方法&#xff0c;以帮助交易者更有…