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

公司如何建设网站首页省直部门门户网站建设

公司如何建设网站首页,省直部门门户网站建设,长宁网站推广公司,图表设计网站目录 一、选择排序 1.1 什么是选择排序? 1.2 思路 1.2.1 思路一 1.2.2 优化思路 1.3 C语言源码 1.3.1 思路一 1.3.2 优化思路 二、堆排序 一、选择排序 1.1 什么是选择排序? 选择排序是一种简单直观的排序算法。它的基本思想是从未排序的数据…

目录

一、选择排序

1.1 什么是选择排序?

1.2 思路

1.2.1 思路一

1.2.2 优化思路

1.3 C语言源码

1.3.1 思路一

1.3.2 优化思路

二、堆排序


一、选择排序

1.1 什么是选择排序?

选择排序是一种简单直观的排序算法。它的基本思想是从未排序的数据中选择最小(或最大)的元素,放到已排序数据的末尾,同时将该元素从未排序部分删除,直到所有元素都排序完成。

具体操作为,首先找到未排序部分的最小元素,并与未排序部分的第一个元素交换位置,这样就完成了一次选择。然后,将接下来未排序部分的第一个元素视为最小,找到最小元素并与未排序部分的第一个元素交换位置,以此类推,直到所有元素都排序完成。

选择排序的时间复杂度为O(n^2),是一种不稳定的排序算法。虽然它的效率相对较低,但由于其简单易实现,可以用于排序小规模的数据集合。然而对于大规模数据集合,选择排序通常不是一个最佳的选择。

1.2 思路

1.2.1 思路一

  1. 遍历第一趟数组,找出数组的最小值,与第一个数据交换
  2. 遍历第二趟数组,继续找出最小值,与第二个数据交换
  3. 重复上述动作

1.2.2 优化思路

  1. 一趟遍历找到最大和最小的元素,分别把他们放到数组的两端
  2. 缩小区间最大最小值包含的区间,找到次大,次小的元素
  3. 以此类推,直到头尾下标重合

该思路可能存在的问题:当maxi的位置与begin重合,则begin先与mini的位置交换,此时max位置的最大值被交换走,导致endmax交换的数值是错误的(图解见下)

1.3 C语言源码

1.3.1 思路一

//交换两个数据
void Swap(int* a, int* b)
{int temp = *a;*a = *b;*b = temp;
}
//选择排序
void SelectSort(int* arr, int n)
{int i = 0;for (i = 0; i < n-1; i++){int min = i;for (int j = i+1; j < n; j++){if (arr[j] < arr[min]){min = j;}}Swap(&arr[i], &arr[min]);}
}

1.3.2 优化思路

//交换两个元素
void Swap(int* p1, int* p2)
{int tmp = *p1;*p1 = *p2;*p2 = tmp;
}
//插入排序
void SelectSort(int* a, int n)
{int begin = 0;int end = n - 1;while (begin < end){int mini = begin;int maxi = begin;//在区间中找出最小的数和最大的数for (int i = begin + 1; i <= end; i++){if (a[i] > a[maxi]){maxi = i;}if (a[i] < a[mini]){mini = i;}}//最小的数与首交换Swap(&a[begin], &a[mini]);//特殊情况修正if (begin == maxi)				{maxi = mini;}//最大的数与尾交换Swap(&a[end], &a[maxi]);begin++;end--;}
}

二、堆排序

请点击:堆排序详细理解-CSDN博客


文章转载自:

http://Sv86PunD.Ldgqh.cn
http://aibvhWuF.Ldgqh.cn
http://S7mTKg4N.Ldgqh.cn
http://zK4USZj6.Ldgqh.cn
http://X9ibep83.Ldgqh.cn
http://ZjAAajC2.Ldgqh.cn
http://5rhuBXhK.Ldgqh.cn
http://ijljw2fy.Ldgqh.cn
http://JRxCSk2C.Ldgqh.cn
http://dHsdTfDD.Ldgqh.cn
http://K659DK38.Ldgqh.cn
http://EgUP9Wao.Ldgqh.cn
http://CVQ6BldT.Ldgqh.cn
http://yyQwYhdx.Ldgqh.cn
http://0N3ry87d.Ldgqh.cn
http://ttu8R54f.Ldgqh.cn
http://gn3vNSSz.Ldgqh.cn
http://mpjkjO14.Ldgqh.cn
http://BHt5w42b.Ldgqh.cn
http://NkIKkZUS.Ldgqh.cn
http://IzWXdSCr.Ldgqh.cn
http://XKI8EeSl.Ldgqh.cn
http://pdWXKnL4.Ldgqh.cn
http://RqcSxSio.Ldgqh.cn
http://Kp7mAUlu.Ldgqh.cn
http://PugwkprX.Ldgqh.cn
http://LoRktiY6.Ldgqh.cn
http://YexYtcJf.Ldgqh.cn
http://cHccivWq.Ldgqh.cn
http://LKBiVXjs.Ldgqh.cn
http://www.dtcms.com/wzjs/769420.html

相关文章:

  • 一般做淘宝的素材都有哪个网站苏州建站模板搭建
  • 手机上做网站php推广app最快的方法
  • 焦作网站建设无锡做网站设计
  • 营销式网站建设公司ui设计与制作培训
  • 做直播网站需要学什么软件有哪些深圳建站公司收费
  • 广东佛山网站建设wordpress俄语
  • 网站上社保做增员怎么做中国建设工程招投标网站
  • 扁平化网站布局软件定制开发优势
  • 国外网站如何建设网站建设英语翻译
  • 山东网站设计济南旅游网页设计
  • 开个网站需要什么条件营销活动网站
  • 新乡新手学做网站企业百度网站怎么做的
  • 网站推广软件网站建设 该如何选好域名
  • 做金融资讯网站需要哪些牌照wordpress grace
  • 大连鼎信网站建设公司快速优化官网
  • 北京做网站好扁平风格网站欣赏
  • 江苏省住房与城乡建设厅网站首页国外优秀人像摄影网站
  • 深圳网站建设 营销wordpress页面html代码
  • 哪个网站有免费空间做网站赚几百万
  • 揭西网站建设网站撤销备案
  • 优秀企业网站建设nas wordpress将好的文章转载
  • 家具建设网站怎么做繁体字网站
  • 在线网站建设系统北京建设网站 公司
  • 成都市建设质监站网站wordpress
  • 产品网站策划学做彩票网站好
  • 网站开发职业规划vip广告网站建设
  • 建设通招标网站网站建设包括哪方面
  • 潍坊知名网站建设公司温州网站优化搜索
  • 中文域名做的网站有哪些江苏省建设厅网站建造师强制注销
  • 单位建设网站硬件yw27777最新跳转接口