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

平顶山市建设委员会网站/郑州搜索引擎优化

平顶山市建设委员会网站,郑州搜索引擎优化,在线借贷网站建设,商机网项目在编写代码前,请大家看看归并排序的思想。 百度百科--归并排序 下面是根据这个思想而编写的算法。 package MergeSort;public class MergeSortMain {public static void main(String[] args){int[] theArrnew int[]{98,75,14,15,18,12,14,16,77,1,99,47};MergeSort…

在编写代码前,请大家看看归并排序的思想。


百度百科--归并排序



下面是根据这个思想而编写的算法。


package MergeSort;public class MergeSortMain {public static void main(String[] args){int[] theArr=new int[]{98,75,14,15,18,12,14,16,77,1,99,47};MergeSortMain mysort=	new  MergeSortMain(theArr);mysort.megerSort();mysort.debugPrint();}private int[] _tmpArr;//--临时区域,为了避免操作原始数组导致结构变化,所以这里直接copy一个数组,然后操作这个数组。private int[] _middle_result;private int[] _originArr;public MergeSortMain(int[] needSortedArray){if(needSortedArray==null){return;}_originArr=needSortedArray;_tmpArr=new int[needSortedArray.length];_middle_result=new int[needSortedArray.length];int cindex=0;for(int i:_originArr){_tmpArr[cindex]=i;cindex++;}}public int[] megerSort(){if(_tmpArr==null||_tmpArr.length<=1){return _tmpArr;}if(_tmpArr.length==2){recursion_division(0, 1);return _tmpArr;}else{recursion_division(0, _tmpArr.length-1);return _tmpArr;}}/*** 递归处理归并排序。* beginLoc===表示当前归并排序的左界,* endloc表示右界,当左界=右界时,表示当前划分出来的是一个数,不用排序了。* */private void recursion_division(int beginLoc,int endLoc){if(beginLoc>=endLoc){return;}else if(endLoc-1==beginLoc){meger_sort_division(beginLoc, beginLoc, endLoc, endLoc);return;		}int tmpLoc1=  (int)Math.floor(((double)((beginLoc+endLoc)/2)));recursion_division(beginLoc, tmpLoc1);recursion_division(tmpLoc1+1, endLoc);meger_sort_division(beginLoc, tmpLoc1, tmpLoc1+1, endLoc);}private void meger_sort_division(int beginLoc1,int endLoc1,int beginLoc2,int endLoc2){if(beginLoc1<=endLoc1&&beginLoc1<=endLoc2&&beginLoc1<beginLoc2){if(beginLoc1==endLoc1&&beginLoc2==endLoc2){if(_tmpArr[beginLoc1]>_tmpArr[beginLoc2]){int itmp=_tmpArr[beginLoc1];_tmpArr[beginLoc1]=_tmpArr[beginLoc2];_tmpArr[beginLoc2]=itmp;}debugPrint();return;}else{int theLength=endLoc2-beginLoc1+1;int leftLoc=0;int rightLoc=0;int theCindex=0;for(int cindex=0;cindex<theLength;cindex++){if(beginLoc1+leftLoc>endLoc1||beginLoc2+rightLoc>endLoc2){break;}if(_tmpArr[beginLoc1+leftLoc]<=_tmpArr[beginLoc2+rightLoc]){_middle_result[cindex]=_tmpArr[beginLoc1+leftLoc];leftLoc++;theCindex=cindex;continue;}else if(_tmpArr[beginLoc1+leftLoc]>_tmpArr[beginLoc2+rightLoc]){_middle_result[cindex]=_tmpArr[beginLoc2+rightLoc];rightLoc++;theCindex=cindex;continue;}}/*** 假如这个,表明出现了左边遍历完,右边没有遍历完;或者右边遍历完,左边没有遍历完的情况。* */if(theCindex<theLength-1){if(beginLoc1+leftLoc<=endLoc1){for(int cindex=beginLoc1+leftLoc;cindex<=endLoc1;cindex++){_middle_result[theCindex+1]=_tmpArr[cindex];theCindex++;}}else if(beginLoc2+rightLoc<=endLoc2){for(int cindex=beginLoc2+rightLoc;cindex<=endLoc2;cindex++){_middle_result[theCindex+1]=_tmpArr[cindex];theCindex++;}}}/*** 将结果放回排序数组中。* */for(int cindex=0;cindex<theLength;cindex++){_tmpArr[beginLoc1+cindex]=_middle_result[cindex];}debugPrint();}}else{return;}}public void debugPrint(){if(_tmpArr==null){return;}System.out.println("");System.out.print("合并结果:");for(int i:_tmpArr){System.out.print("  "+i+" ");}}}


总结:排序算法是相对简单的。

http://www.lbrq.cn/news/1562041.html

相关文章:

  • 西安高校定制网站建设公司推荐/优化网站平台
  • 做游戏陪玩网站/推广文案范例
  • 网站建设市场分析报告/口碑营销案例ppt
  • 江苏句容市疫情最新情况/青岛seo网站关键词优化
  • 有人在相亲网站骗人做传销/单页面seo搜索引擎优化
  • 网站筛选功能/我在百度下的订单如何查询
  • 路由器 东莞网站建设/建站流程主要有哪些
  • 免费网站模板下载大全下载/百度快照是干嘛的
  • 网站开发有限公司/青岛seo外包公司
  • 企业网站主页设计图片/最热门的短期培训课程
  • 网站制作的基本流程/长沙优化网站推广
  • 2018爱情动做网站/2345浏览器主页网址
  • 做网站的前端是做什么/广州线下培训机构停课
  • 沈阳网站建设制作公司/安徽百度关键词优化
  • 网站建设二级分销/百度指数有哪些功能
  • 做ui要上那些网站/高端网站建设公司哪家好
  • 服装电子商务网站设计/怎么进行seo
  • 佛山广告设计公司排名/seo搜索引擎优化薪酬
  • 个人做网站流程图/百度pc端首页
  • 网站建设犭金手指C排名15/自己做网站设计制作
  • 手机在线设计/郑州百度seo排名公司
  • 北京 工业网站建设公司价格/代做seo关键词排名
  • 织梦网站怎样做防护/产品推广软件有哪些
  • 网站开发在线教程/友链是什么
  • 网站怎么做播放器/提高工作效率的软件
  • 设计师素材网站e/google推广公司哪家好
  • 珠海网络网站建设/百度秒收录神器
  • 个人网站可以做导购吗/广东公共广告20120708
  • wordpress+订单号位数/北京优化网站方法
  • 动漫版/uc浏览器关键词排名优化
  • Unity 游戏提升 Android TargetVersion 相关记录
  • RemoteCtrl-初步的网络编程框架搭建
  • 2025年生成式引擎优化(GEO)服务商技术能力评估报告
  • 022 基础 IO —— 文件
  • Java调用bat执行python脚本
  • Mac(二)Homebrew 的安装和使用