当前位置: 首页 > news >正文

php 获取网站根域名互联网营销缺点

php 获取网站根域名,互联网营销缺点,网站建设管理专员,山东监理工程师考试最新消息一、什么是冒泡排序#xff1f; 冒泡排序#xff08;Bubble Sort#xff09;是一种经典的排序算法#xff0c;其工作原理非常直观#xff1a;通过多次比较和交换相邻元素#xff0c;将较大的元素“冒泡”到数组的末尾。经过多轮迭代#xff0c;整个数组会变得有序。 二…一、什么是冒泡排序 冒泡排序Bubble Sort是一种经典的排序算法其工作原理非常直观通过多次比较和交换相邻元素将较大的元素“冒泡”到数组的末尾。经过多轮迭代整个数组会变得有序。 二、冒泡排序的核心思想 比较相邻元素 从数组的起始位置开始逐个比较相邻的两个元素。如果顺序不符合如升序时前一个元素大于后一个元素则交换两者的位置。 逐步缩小范围 每一轮结束后当前未排序部分中最大的元素会移动到正确的位置。下一轮只需处理前面的未排序部分。 三、冒泡排序的实现步骤 从数组的第一个元素开始与相邻元素进行比较。如果顺序不对交换这两个元素。每轮操作后将最大的元素固定在数组的最后。重复上述步骤直到数组完全有序。 四、冒泡排序的 C 语言实现 基本实现 以下是冒泡排序的基本实现代码 #include stdio.h// 冒泡排序函数 void bubbleSort(int arr[], int n) {for (int i 0; i n - 1; i) {for (int j 0; j n - i - 1; j) {if (arr[j] arr[j 1]) { // 比较相邻元素int temp arr[j];arr[j] arr[j 1];arr[j 1] temp;}}} }// 主函数 int main() {int arr[] {64, 34, 25, 12, 22, 11, 90};int n sizeof(arr) / sizeof(arr[0]);printf(排序前的数组: );for (int i 0; i n; i) {printf(%d , arr[i]);}printf(\n);bubbleSort(arr, n);printf(排序后的数组: );for (int i 0; i n; i) {printf(%d , arr[i]);}printf(\n);return 0; }五、输入输出示例 输入 数组[64, 34, 25, 12, 22, 11, 90] 输出 排序前的数组64 34 25 12 22 11 90 排序后的数组11 12 22 25 34 64 90 六、复杂度分析 时间复杂度 最坏情况完全逆序( O(n^2) )最好情况已排序( O(n^2) )未优化情况下。 空间复杂度 只使用了常量空间空间复杂度为 ( O(1) )。 稳定性 冒泡排序是稳定的因为它不会改变相等元素的相对顺序。 七、优化冒泡排序 1. 提前终止的优化 在某一轮比较中如果没有发生交换说明数组已经有序可以提前结束排序。 void optimizedBubbleSort(int arr[], int n) {for (int i 0; i n - 1; i) {int swapped 0; // 标记变量for (int j 0; j n - i - 1; j) {if (arr[j] arr[j 1]) {int temp arr[j];arr[j] arr[j 1];arr[j 1] temp;swapped 1; // 标记发生了交换}}if (!swapped) break; // 如果没有发生交换提前结束} }2. 双向冒泡排序鸡尾酒排序 普通冒泡排序每轮只向一个方向“冒泡”双向冒泡则在一轮中从两端同时冒泡缩小范围。 void cocktailSort(int arr[], int n) {int swapped 1;int start 0, end n - 1;while (swapped) {swapped 0;// 从左向右冒泡for (int i start; i end; i) {if (arr[i] arr[i 1]) {int temp arr[i];arr[i] arr[i 1];arr[i 1] temp;swapped 1;}}if (!swapped) break;swapped 0;end--;// 从右向左冒泡for (int i end - 1; i start; i--) {if (arr[i] arr[i 1]) {int temp arr[i];arr[i] arr[i 1];arr[i 1] temp;swapped 1;}}start;} }八、优缺点分析 优点 实现简单逻辑直观代码易于编写和调试。稳定性好不会改变相等元素的相对顺序。 缺点 效率较低时间复杂度较高尤其对于大规模数据不适用。优化潜力有限即使优化后性能仍不如快速排序或归并排序。 九、冒泡排序的适用场景 小规模数据排序当数据量较小时冒泡排序的性能尚可接受。教学与学习作为入门排序算法帮助理解排序的基本思想。特殊情况下的稳定性需求当需要保持相等元素的相对顺序时可优先选择冒泡排序。 十、总结与建议 冒泡排序作为最基础的排序算法尽管效率较低但其直观的实现方式非常适合初学者学习和理解排序算法的核心思想。在实际应用中建议结合优化方法如提前终止、双向冒泡以提升性能。 下一步学习方向 探索其他排序算法如插入排序、选择排序、快速排序。理解排序算法的稳定性和复杂度选择合适的算法解决实际问题。实现冒泡排序的多种语言版本如 Python、Java。
http://www.dnsts.com.cn/news/117232.html

相关文章:

  • 怎么申请做网站wordpress首页多重筛选
  • 网站优化心得长沙seo在哪
  • 网站建设公司山西做招聘网站需要人力资源许可
  • 网站建设放在什么科目宜宾网站制作
  • 怎么给新网站做推广空包网站建设
  • 上海网站建设服务站霸网络网站首页被k咋办
  • 网站配置优化上海做网站推荐
  • 高职图书馆网站建设大赛怎么制作表格excel初学者视频
  • 上海高端网站开发公搜索引擎推广实训
  • 梁平集团网站建设做网站制作赚钱吗
  • 做直播网站需要手续动态效果的网站建设
  • 网站推广平台怎么做苏州高端网站建设咨询
  • wordpress导航菜单栏沧州百度seo
  • 邀请专家集体会诊网站建设如何在手机上做广告
  • 哪个网站可以找题目给小孩做仿京东网站
  • 订阅号做流量 那些电影如何链接网站贵州建设厅二建考试网站
  • 建设带数据搜索的网站一男一女做那个的动漫视频网站
  • 编织网站建设虾皮这种网站根本不值得做
  • 昌平最好的网站建设西安 网站建设 培训班
  • 装潢设计专业学校企业排名优化公司
  • 爱做网站网址最好看免费观看高清大全电影网站
  • 长春网站建设加王道下拉广州越秀区邮政编码
  • visual studio 2010 网站开发专业做网站公司怎么收费
  • 大唐网站首页广西建设人力资源网
  • 网站制作推荐成都seo培训
  • 做网站主题手机软件程序开发
  • tp5企业网站开发实例制作个人网站的要求
  • 网站建设感恩温州建站方案
  • 请列出页面上影响网站排名的因素百度广告联盟官网入口
  • 北京做药流凤凰网站郑州机械网站建设