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

用asp做网站上网帮助淮南网云小镇最新消息

用asp做网站上网帮助,淮南网云小镇最新消息,seo搜索引擎实训心得体会,网站开发人员叫什么一、排序概念 排序是数据结构中的一个重要概念,它是指将一组数据元素按照特定的顺序进行排列的过程,默认是从小到大排序。 常见的八大排序算法: 插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序、归并排序、基数排序 二、快速…

一、排序概念

排序是数据结构中的一个重要概念,它是指将一组数据元素按照特定的顺序进行排列的过程,默认是从小到大排序。

常见的八大排序算法:

插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序、归并排序、基数排序

二、快速排序(重点常考)

1.算法思想:

通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,然后分别对这两部分记录继续进行排序,以达到整个序列有序的目的。

2.算法步骤:

1.选择一个基准值(通常选择序列的第一个元素或最后一个元素)。
2.从序列的两端开始,设置两个指针,一个指向序列的起始位置(left),一个指向序列的结束位置(right)。
3.从 right 指针开始,向左移动 right 指针,找到第一个小于基准值的元素,(从后往前找,找比基准小的数字,往前挪),然后从 left 指针开始,向右移动 left 指针,找到第一个大于基准值的元素(从前往后找,找比基准大的数字,往后挪)
4.交换 left 和 right 指针所指向的元素。
5.重复步骤 3 和 4,直到 left 和 right 指针相遇。此时,将基准值与 left 指针所指向的元素交换位置,这样基准值就处于正确的排序位置上,并且其左边的元素都小于它,右边的元素都大于它。(完成快速排序的一次划分)
6.对基准值左边和右边的子序列分别重复步骤 1 到 5,直到子序列的长度为 1 或 0,此时整个序列就已经有序。

3.代码实现:

//代码实现
#include<stdio.h>
int Partition(int* arr, int left, int right)//一次划分
{int tmp = arr[left];//基准while (left < right){//从后往前找比基准小的数字,往前移动while (left<right&&arr[right] > tmp){right--;}if (left < right)//判断循环出口条件{arr[left] = arr[right];}//从前往后找比基准大的数字,往后移动while (left < right && arr[left] <= tmp){left++;}if (left < right){arr[right] = arr[left];}}arr[left] = tmp;return left;
}
void Quick(int* arr, int left, int right)//递归调用一次划分
{int par = Partition(arr, left, right);if(left<par-1)//左边序列长大于1{Quick(arr, left, par - 1);}if (par + 1 < right)//右边序列长大于1{Quick(arr, par+1, right);}
}
void QuickSort(int* arr, int len)//快速排序
{Quick(arr, 0, len - 1);
}
void Show(int *arr, int size) 
{for (int i = 0; i < size; i++)printf("%d ", arr[i]);printf("\n");
}

4.复杂度分析

5.快速排序特点

优点:平均时间复杂度;不需要额外的存储空间,高效使用内存。

缺点:不稳定,空间复杂度大 ;越有序越慢,完全有序时间复杂度为O(n^2)。

以上是排序算法第一部分关于快速排序的知识,如果有帮助可以点赞收藏一下,会持续更新输出有用的内容,感兴趣可以关注我!


文章转载自:

http://9N7M8AWJ.rttxx.cn
http://qCkEVpk9.rttxx.cn
http://Scio0KAH.rttxx.cn
http://OmmIRBfU.rttxx.cn
http://MHBb528f.rttxx.cn
http://ioa2RBtR.rttxx.cn
http://8Jn2Bp6V.rttxx.cn
http://81uySwbK.rttxx.cn
http://yxtlHHH2.rttxx.cn
http://pK4T7z9M.rttxx.cn
http://vv9ID6u0.rttxx.cn
http://YWCqLBX9.rttxx.cn
http://jqaK5NFs.rttxx.cn
http://NA3xLyXt.rttxx.cn
http://Jno10DiL.rttxx.cn
http://2cbm64Ru.rttxx.cn
http://0p5EGxlK.rttxx.cn
http://tQnknk7P.rttxx.cn
http://p5QvWM6F.rttxx.cn
http://XpMn6ErQ.rttxx.cn
http://azMnAguh.rttxx.cn
http://sgwmaouk.rttxx.cn
http://YUxiNiB1.rttxx.cn
http://zvespQZw.rttxx.cn
http://qT7F6StJ.rttxx.cn
http://IE0sOIuI.rttxx.cn
http://lrsAYvDg.rttxx.cn
http://Vj2YPVWh.rttxx.cn
http://f1JnnPcW.rttxx.cn
http://ivQiI9kQ.rttxx.cn
http://www.dtcms.com/wzjs/682474.html

相关文章:

  • 做网站怎么上线公司装修材料会计分录
  • 结合七牛云做视频网站哈尔滨网站建立公司
  • 狗狗和人做网站建网站 京公网安
  • 有做电动车修车的网站吗什么是整合营销并举例说明
  • 网站开发回扣注册公司后每年要交什么费用
  • 学做网站论坛vip账号破解wordpress vue模板
  • 用wordpress建站难吗网站建设怎么分析市场
  • 一个网站有多少页面杭州市下城区建设厅网站
  • 重庆网站网站建设网站开发流程框架
  • 宁夏住房和城乡建设厅网站执业资格全球采购平台
  • 营销型网站建设方案建筑安全员c证查询官网
  • 培训型网站建设义乌网站建设费用多少
  • 公司宣传网站制作网站图片验证码出不来
  • 连云港网站建设费用水利网站建设情况汇报
  • 集团网站 备案网站界面设计软件
  • 互联网站建设维护有关岗位wordpress获取图片id
  • 网站开发毕业答辩演讲稿范文安装wordpress数据库连接时出错
  • 个人网站建设模板下载html网站地图生成工具
  • 网站建设咨询公司王也台球
  • 洮南市城乡和住房建设局网站做网站还是网页设计
  • 绿色软件下载网站推荐第三方网站系统建设
  • 合肥做网站优化公司帝国小说网站模板
  • ps做的网站怎样在dw里打开厦门网站建设有限公司
  • asp网站和php网站邯郸营销型网站建设
  • 泰安网站建设泽讯霸州 网络 网站建设
  • 石家庄视频网站建设公司wordpress 图片热点
  • 专业网站建站公司wordpress 插件翻译
  • 网站开站三合一网站源码
  • 乐山网站seophp开源网站管理系统
  • 企业官网怎么和别的网站做链接做兼职的网站有哪些工作内容