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

怎么做微信辅助的网站国内网站赏析

怎么做微信辅助的网站,国内网站赏析,图片素材网站建设,旅行社网站建设规划书论文引言:在上一篇中我们详细介绍了快速排序和改进,并给出了其中的一种实现方式-挖坑法 但其实快速排序有多种实现方式,这篇文章再来介绍其中的另外两种-左右指针法和前后指针法。有了上一篇挖坑法的启示,下面的两种实现会容易许多。 …

引言:在上一篇中我们详细介绍了快速排序和改进,并给出了其中的一种实现方式-挖坑法

但其实快速排序有多种实现方式,这篇文章再来介绍其中的另外两种-左右指针法和前后指针法。有了上一篇挖坑法的启示,下面的两种实现会容易许多。

 一、左右指针法

 首先进行“三数取中”

 

 

这样就完成了比4小的在左边,比4大的在右边。

就继续递归就好了。

下面是代码:

int mid_quick_number(int* arry, int left, int right) {int mid = left + (right - left >> 1);//去中间数防止普通求中间数溢出问题,//同时注意优先级,+ -的优先级高于》《if (arry[mid] > arry[left]) {if (arry[right] > arry[mid]) {mid = mid;}else if(arry[right]>arry[left]){mid = right;}else {mid = left;}}else {if (arry[right] < arry[mid]) {mid = mid;}else if (arry[right] > arry[left]) {mid = left;}else {mid = right;}}return mid;
}
//左右指针法
void dfs_quick_sort2(int* arry, int left, int right) {if ((right - left) <= 0)return;int mid = mid_quick_number(arry, left, right);swap(arry + mid, arry + left);int key = arry[left];int start = left;int end = right;while (start < end) {while (start < end && key <= arry[end]) {end--;}//右指针去找比key小的,停下while (start < end && key >= arry[start]) {start++;}//左指针去找大的,停下swap(arry + start, arry + end);//交换大的和小的}swap(arry + end, arry+left);//最后两个指针重合,将key与right或左的值交换dfs_quick_sort2(arry, left, start - 1);dfs_quick_sort2(arry, start + 1, right);
}

二、前后指针法

 

 

这样就可以把它拆分成两段,在对这两段进行递归即可。

 下面来看代码:

//前后指针法
void dfs_quick_sort3(int* arry, int left, int right) {if ((right - left) <= 0)return;int mid = mid_quick_number(arry, left, right);swap(arry + mid, arry + left);int key = arry[left];int cur = left;int pre = left - 1;while (cur <= right) {while (cur <= right && arry[cur] >= key) {cur++;}if (cur <= right) {pre++;swap(arry + cur, arry + pre);}}if (pre == left-1)pre++;dfs_quick_sort3(arry, left, pre);dfs_quick_sort3(arry, pre + 1, cur - 1);
}

好了,这是本篇文章的所有内容了,希望对你有所帮助!

http://www.yayakq.cn/news/401732/

相关文章:

  • 昆明 网站搭建企业解决方案架构
  • 图书馆网站信息化建设如何在网站插做视频
  • 做企业网站注意中山商城网站建设
  • 网站建设公司-跨界鱼科技优小城镇建设网站并阐述观点
  • 网站建设优化价格营销网名
  • .net如何做网站郑州网站设计制作
  • 广东网站建设人员网站建设需要什么材料
  • 帮做动态头像的网站企业营销微网站建设
  • 网站换空间上怎么办啊沈阳德泰诺网站建设
  • 南京工程建设招聘信息网站优秀seo平台
  • 罗田网站建设石家庄网站建设方案咨询
  • 提交网站给百度国外优秀的html5网站
  • 网站建设唐山赣州章贡区天气预报
  • 微信营销网站wordpress 5 开发
  • 对网站建设在电子商务中的看法企业百度推广怎么收费
  • 英文网站网站建设wordpress外贸网站源码
  • 自己开发网站怎么开发漯河企业网站开发
  • 哪些人可以做网站游戏分销代理平台
  • 个人站长还有什么类型的网站可以做驻马店网站建设价格
  • 物流网站建设哪个好上海十大黑心装修公司
  • 买国外空间哪个网站好可以发广告的网站
  • 站长工具樱花网站开发有哪几个阶段
  • 做网站找合作伙伴Wordpress怎么改成中文
  • 制作网站公司图片建设银行信用卡网站多少
  • 中国建设银行个人登陆网站每年网站备案抽查
  • wp如何做引擎网站wordpress 多备份
  • 营销型网站开发公司电话WordPress 卡密购买插件
  • 做黎川旅游网站的目的常州外贸网站
  • 网站设计原型图关于加强网站建设与管理的通知
  • 网站排名下降的原因哈尔滨高端网页设计