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

简单的设计网站做哪个网站好

简单的设计网站,做哪个网站好,网站设计制作合同,网站链接交易快速排序是Hoare于1962年提出的一种二叉树结构的交换排序算法#xff0c;其基本思想是#xff1a;任取待排序序列中的某元素作为基准值#xff0c;按照该基准值将待排序集合分割成两个子序列#xff0c;左子序列中所有元素均小于基准值#xff0c;右子序列中所有元素均大于…快速排序是Hoare于1962年提出的一种二叉树结构的交换排序算法其基本思想是任取待排序序列中的某元素作为基准值按照该基准值将待排序集合分割成两个子序列左子序列中所有元素均小于基准值右子序列中所有元素均大于基准值然后左右子序列递归该过程直到所有元素都排列在相应的位置上为止。 排序对象数组、链表时间复杂度空间复杂度是否稳定否 // 假设按照升序对array数组中[left, right)区间中的元素进行排序 void QuickSort(int array[], int left, int right) {if(right - left 1)return;// 按照基准值对array数组的 [left, right)区间中的元素进行划分int div partion(array, left, right);// 划分成功后以div为边界形成了左右两部分 [left, div) 和 [div1, right)// 递归排[left, div)QuickSort(array, left, div);// 递归排[div1, right)QuickSort(array, div1, right); } 上述为快速排序算法递归实现的主框架与二叉树前序遍历的规则类似。 快速排序算法可以由多种实现方法如霍尔法、挖坑法、前后指针法目前最优的算法是前后指针法其基本思路是 选择数组中的一个元素作为枢轴一般是第一个元素其元素为关键值key而key值最好是数组的中位数仅在前中后三个元素中取中位数将数组划分为两个子数组左子数组的元素都小于等于枢轴元素右子数组的元素都大于等于枢轴元素对这两个子数组分别递归调用快速排序算法继续进行划分和排序递归的结束条件是子数组的长度为1或0即已经有序或为空数组不需要再进行排序通过不断划分和排序最终实现整体的排序在划分过程中通过比价元素与枢轴元素的大小关系将元素划分到对应的区域 // 数组开始、中间、结尾三个元素找到中位数将其作为key值并返回下标 int MidIndex(int* arr, int l, int m, int r) {if (arr[l] arr[r]){if (arr[m] arr[l])return l;else if (arr[m] arr[r])return r;elsereturn m;}else{if (arr[m] arr[l])return l;else if (arr[m] arr[r])return r;elsereturn m;} }// 前后指针法快慢指针法 // 快排每一次递归的核心就是PtrPtr算法返回新的关键字key的下标 // 每一次PtrPtr算法就是为了将小于key的数移到key的左边将大于key的数移到key的右边 // 当多次进行递归后数组的有序度已经很高了所以此时也可以不再递归而是采用直接插入排序 int PtrPtr(int* arr, int begin, int end) {if (begin end)return;int slow begin;int fast slow 1;while (fast end){if (arr[fast] arr[begin] slow ! fast)Swap(arr[slow], arr[fast]);fast;}Swap(arr[begin], arr[slow]);return slow; // 返回新的key值下标 }void QuickSort(int* arr, int begin, int end) {if (begin end)return;int mid (begin end) / 2;int iKey MidIndex(arr, begin, mid, end);Swap(arr[begin], arr[iKey]);iKey PtrPtr(arr, begin, end);QuickSort(arr, begin, iKey - 1);QuickSort(arr, iKey 1, end); }
http://www.pierceye.com/news/90500/

相关文章:

  • 厦门网站网页设网页素材html
  • 活字格能开发企业网站吗商品门户网站解决方案
  • 网站虚拟主机内存不足能不能链接美工怎么做网站效果图
  • 网站版建设软件开发培训班有哪些
  • 舟山市城市建设档案馆网站武夷山景区网站建设特点
  • 北京建设工程质量总站网站哈尔滨网站只做
  • 做外单网站有哪些网站开发工程师需要什么技术
  • 跨境电商自己做网站引流会宁县建设局网站
  • 对于学校网站建设的建议google推广公司哪家好
  • 国外做装饰画的网站公司logo设计图片欣赏
  • 宿州外贸网站建设公司工信部资质查询网站
  • 动漫做暧视频网站用手机制作动画的app
  • 网站备案 域名证书帝国cms响应式网站模板
  • 一个电信ip做网站卡不卡企业网站建设排名资讯
  • 网站建设论文的开题报告制作一个app软件需要多少时间
  • 我们做的网站是优化型结构做二手车网站需要什么
  • 湛江网站建设保定公司互联网信息服务平台官网
  • 做展柜平时在哪里网站推广网站色彩学
  • 网站建站 seo企业网站建设方案模板
  • 国外有哪些做deal的网站四川建筑职业学校官网教务网
  • 无锡网站制作工作室临夏州建设厅官方网站
  • 怎么建设淘宝联盟的网站150m网站空间
  • 淘宝联盟链接的网站怎么做的wordpress幻灯片教程视频教程
  • 网站上线稳定后工作wordpress 不同的文章
  • 网站制作一条龙淘宝详情页制作
  • 海南营销网站建设安徽省住房城乡建设厅网站
  • 单招网站开发基础知识厚街网站建设公司
  • 怎么建微信群如何完成seo优化
  • 顺义广州网站建设wordpress更改字体大小
  • 网站二级目录怎么做婚纱摄影类网站