做微网站的第三方登录wordpress 目录布局

news/2025/9/25 21:23:16/文章来源:
做微网站的第三方登录,wordpress 目录布局,网站在线建站,wordpress theauthor目录 一、引言 二、代码整体结构 三、宏定义与头文件 四、插入排序函数#xff08;Insertsort#xff09; 函数作用 代码要点分析 五、希尔排序函数#xff08;ShellSort#xff09; 函数作用 代码要点分析 六、打印数组函数#xff08;PrintSort#x…目录 一、引言  二、代码整体结构  三、宏定义与头文件  四、插入排序函数Insertsort 函数作用  代码要点分析  五、希尔排序函数ShellSort  函数作用  代码要点分析  六、打印数组函数PrintSort  函数作用  代码要点分析  七、测试函数TestSort与主函数main  函数作用  代码要点分析  八、总结  一、引言   在计算机科学领域排序算法是非常基础且重要的内容。不同的排序算法有着各自的特点和适用场景。本文将基于给定的C语言代码深入剖析插入排序Insertion Sort和希尔排序Shell Sort的实现过程帮助读者更好地理解这两种排序算法的原理与应用。 作者主页共享家9527-CSDN博客 二、代码整体结构   代码主要包含了插入排序函数、希尔排序函数、打印数组函数以及测试函数和主函数整体结构清晰便于理解和维护。下面我们对每个函数进行详细分析。 三、宏定义与头文件   c#define _CRT_SECURE_NO_WARNINGS #includeSort.h #define _CRT_SECURE_NO_WARNINGS  这一宏定义的作用是在使用一些被认为可能存在安全风险的C标准库函数如 scanf 、 strcpy 等时避免编译器产生警告信息。 #includeSort.h  表示包含自定义的头文件 Sort.h 虽然在给出的代码中未看到该头文件的具体内容但通常它会包含一些函数声明、类型定义等内容方便代码的模块化管理。 四、插入排序函数Insertsort c//插排 void Insertsort(int* a, int n){for (int i 1;i n;i){int end i - 1;int temp a[i];while (end 0){if (temp a[end]){a[end 1] a[end];end--;}else{break;}}a[end 1] temp;} } 函数作用   插入排序函数的功能是对给定的整数数组进行排序排序的基本思想是将一个数据插入到已经排好序的数组中的适当位置。   代码要点分析   1. 外层循环 for (int i 1;i n;i)  从数组的第二个元素开始因为第一个元素可以看作是已经排好序的子数组依次将每个元素插入到前面已排序的子数组中的合适位置。   2. 初始化变量 int end i - 1;  定义 end 变量表示已排序子数组的最后一个元素的下标。 int temp a[i];  将当前待插入的元素暂存到 temp 变量中。   3. 内层循环 while (end 0)  当 end 大于等于0时继续循环即只要还在已排序的子数组范围内就进行比较和移动操作。 if (temp a[end])  如果待插入元素小于当前已排序子数组的最后一个元素则将该元素向后移动一位同时 end 减1继续向前比较。当遇到不满足该条件的元素时说明找到了待插入元素的合适位置通过 break 跳出循环。   4. 插入操作 a[end 1] temp;  将暂存的待插入元素插入到合适的位置。   五、希尔排序函数ShellSort c//希尔 void ShellSort(int* a, int n) {int gap 9;while (gap 0){gap / 2;for (int j 0;j gap;j){for (int i j;i n - gap;i gap){int end i;int temp a[i gap];while (end 0){if (temp a[end]){a[end gap] a[end];end - gap;}else{break;}}a[end gap] temp;}}} } 函数作用   希尔排序是插入排序的一种改进版本通过将数组按照一定的间隔 gap 进行分组对每组分别进行插入排序随着间隔逐渐减小最终完成整个数组的排序。   代码要点分析   1. 初始间隔设置 int gap 9;  定义初始的分组间隔这里设置为9不同的初始间隔可能会影响排序的效率。   2. 间隔调整循环 while (gap 0)  当间隔大于0时继续进行排序操作。每次循环中 gap / 2;  将间隔逐渐缩小直到间隔为1时相当于进行一次普通的插入排序。   3. 分组循环 for (int j 0;j gap;j)  对每个分组进行遍历确保每个分组都能进行插入排序操作。   4. 组内插入排序循环 for (int i j;i n - gap;i gap)  对每个分组内的元素进行插入排序类似于插入排序的过程但这里元素之间的比较和移动是按照间隔 gap 进行的。   5. 插入操作与插入排序类似通过比较和移动元素将当前元素插入到分组内合适的位置。   六、打印数组函数PrintSort   cvoid PrintSort(int* a, int n) {for (int i 0;i n;i){printf(%d ,a[i]);}printf(\n); } 函数作用   该函数的功能是将给定的整数数组按照顺序打印输出方便查看数组在排序前后的状态。   代码要点分析   通过一个简单的 for 循环遍历数组使用 printf 函数逐个输出数组元素并在最后换行使输出结果更加清晰易读。   七、测试函数TestSort与主函数main   cvoid TestSort() {int arr[] { 9,5,1,3,7,8,4,2,6,0 };int n sizeof(arr) / sizeof(arr[0]);PrintSort(arr, n);Insertsort(arr, n);//ShellSort(arr, n);PrintSort(arr, n); }int main() {TestSort();return 0; } 函数作用   TestSort 函数用于测试排序算法的正确性在函数内部创建一个测试数组先打印数组的初始状态然后调用插入排序函数对数组进行排序再次打印排序后的数组状态。 main 函数则是程序的入口调用 TestSort 函数来执行测试。   代码要点分析   1. 在 TestSort 函数中 int arr[] { 9,5,1,3,7,8,4,2,6,0 };  创建一个包含10个整数的测试数组。 int n sizeof(arr) / sizeof(arr[0]);  计算数组的元素个数。   2. 调用 PrintSort 函数打印数组初始状态然后调用 Insertsort 函数进行排序注释掉的 ShellSort(arr, n);  表示如果需要测试希尔排序可取消注释。最后再次调用 PrintSort 函数打印排序后的数组。   3.  main 函数中仅调用 TestSort 函数程序从这里开始执行。   八、总结 通过对上述代码的详细分析我们深入了解了插入排序和希尔排序的实现过程。插入排序简单直观适用于小规模数据的排序希尔排序作为插入排序的改进算法通过分组和逐渐缩小间隔的方式提高了排序效率尤其在处理大规模数据时表现更为出色。在实际应用中我们可以根据数据的特点和规模选择合适的排序算法来满足需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/917549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关键词搜索爱站网自己如何建立网站

一、设计模式分类 软件开发的23种模式,主要分类有创建型模式,结构型模式,行为型模式三种,相关分类如下: 设计模式是一种面向对象编程的思想,它是由Gamma等人在《设计模式:可复用面向对象软件的…

详细介绍:ES6核心基础

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

kubernetes事件监控工具--Kube-Event

在日常使用中,总会碰到容器“不经意间”重启的情况,但我完全不知道上次重启是什么时候。容器一旦重启,旧实例就会被销毁,如果旧容器日志没有被收集或转存,就彻底丢失了。这样一来,想通过历史日志排查问题原因就显…

wordpress 中英文站点佛山的网站建设公司

引言 C语⾔是结构化的程序设计语⾔,这⾥的结构指的是顺序结构、选择结构、循环结构。为什么有着三种结构呢,大家其实可以想象一下,生活中的绝大数事情都可以抽象着三种结构,而我们今天要给大家介绍的就是三大结构之一——选择结构…

做电子简历的网站悦西安

本文主要介绍Linux 字体颜色的调整,常用于shell脚本当中。我们举一个例子:echo-e"\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色,闪烁光标,输出字符“ME”,然后重新设置屏幕…

企业档案管理系统:精准破局制造行业档案管理困境 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

实用指南:【 GUI自动化测试】GUI自动化测试(一) 环境安装与测试

实用指南:【 GUI自动化测试】GUI自动化测试(一) 环境安装与测试pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "C…

怎么建一个卖东西的网站网站怎样关键词排名优化

在日常编码环节,很大比例的错误处理工作和参数的输入有关。当程序里的某些数据直接来自用户输入时,必须先校验这些输入值,再进行之后的处理,否则就会出现难以预料的错误。 需求: 写一个命令行小程序,它要求…

喵喵大王の新日记

2025 9.25 突然心血来潮了,于是开了新日记,但是实际上我也不一定更的多么频繁,毕竟上了大学还是有点忙的。才不是一直打三角洲懒得更新 这里应当有一篇新文章。啥时候写完想起来放上。本文来自博客园,作者:北烛青…

【JavaEE】MyBatis - Plus - 教程

【JavaEE】MyBatis - Plus - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…

多GPU本地布署Wan2.2-T2V-A14B文本转视频模型 - yi

多GPU本地布署Wan2.2-T2V-A14B文本转视频模型一,#本机环境检查 执行nvidia-smi,查看右上角。验证显卡驱动已安装最高支持的版本。nvidia-smi#在调试时,为了实时观察GPU利用率,一般新开一个命令窗口,执行以下命令,…

NOI 模拟赛五

DPA. 纪念场切题。 记 \(f[i, j, x, 0/1, 0/1]\) 表示前 \(i\) 个车站都已经经过,\(i\rightarrow i+1\) 的边走过 \(j\) 次,总距离 \(\bmod m=x\) ,是否钦定起点,是否钦定终点(这 \(j\) 条边经过是有顺序)。 为了…

常州装修网站建设公司企业的建站方式

运行软件前提前安装好OPC运行组件: 为方便演示,提前准备好了一个DAServer服务器: 接下来开始配置: 该软件主要实现的功能如下: 配置过程也相对简单: 第一步: 编辑如下文件: 第二步…

企业微信手机片网站制作上海建筑工程招投标网

这是什么?这是有关警告,错误和注意事项的许多答案,这些警告,错误和注意事项在您对PHP进行编程时可能会遇到,并且不知道如何解决它们。这也是一个社区Wiki,因此邀请所有人参与添加并维护此列表。为什么是这样…

免费咨询律师24小时电话桂平seo快速优化软件

数学建模常用的算法分类 全国大学生数学建模竞赛中,常见的算法模型有以下30种: 最小二乘法数值分析方法图论算法线性规划整数规划动态规划贪心算法分支定界法蒙特卡洛方法随机游走算法遗传算法粒子群算法神经网络算法人工智能算法模糊数学时间序列分析马…

中小型网站建设与管理总结wordpress手机怎么用

性能对比:Memcached 与 Redis 的关键差异 在选择合适的缓存系统时,Memcached 和 Redis 是最常被提及的两种技术。它们都是内存存储系统,用于提高数据访问速度和应用性能。尽管它们在功能上有很多相似之处,但在性能、特性和应用场…

AI热点周报(09.14~09.20):Gemini集成到Chrome、Claude 强化记忆、Qwen3-Next快捷落地,AI走向集成化,工程化?

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

什么是Delphi4Python?

什么是Delphi4Python? Delphi for Python的主要重点是为Python开发者提供免费的Python模块或Delphi的GUI框架的绑定。基于Delphi的两个不同的框架两个不同的库。DelphiVCL,用于 Windows 的本地库;DelphiFMX,用于跨…

实用指南:Python的大杀器:Jupyter Notebook处理.ipynb文件

实用指南:Python的大杀器:Jupyter Notebook处理.ipynb文件pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Conso…

flask认证机制logging模块实战

flask认证机制logging模块实战 ​ 如何在项目中实现日志的记录呢?在 Flask 中我们可以使用 Python 的内置 logging 模块来实现记录日志。你可以对照表格看看具体的日志级别分类,从上往下级别依次升高,最高的是 CRIT…