非递归实现归并排序
2016-03-14 11:33
330 查看
归并算法的中心是归并两个已经有序的数组
public class MergeApp { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int[] arrayA={23,47,81,95}; int[] arrayB={7,14,39,55,62,74}; int[] arrayC=new int[10]; merge(arrayA, 4, arrayB, 6, arrayC); display(arrayC, 10); } public static void merge(int[] arrayA,int sizeA,int[] arrayB,int sizeB,int[] arrayC){ int aDex=0,bDex=0,cDex=0; while(aDex<sizeA&&bDex<sizeB){//neither array empty if(arrayA[aDex]<arrayB[bDex]){ arrayC[cDex++]=arrayA[aDex++]; } else{ arrayC[cDex++]=arrayB[bDex++]; } } while(aDex<sizeA){//arrayB is Empty arrayC[cDex++]=arrayA[aDex++]; } while(bDex<sizeB){ arrayC[cDex++]=arrayB[bDex++]; } } public static void display(int[] theArray,int size){ for(int j=0;j<size;j++){ System.out.print(theArray[j]+" "); } System.out.println(""); } }
相关文章推荐
- 有关数据库SQL递归查询在不同数据库中的实现方法
- C#中的递归APS和CPS模式详解
- WinForm实现按名称递归查找控件的方法
- 使用SqlServer CTE递归查询处理树、图和层次结构
- C#中的尾递归与Continuation详解
- C#递归实现显示文件夹及所有文件并计算其大小的方法
- php递归创建目录的方法
- PHP递归创建多级目录
- Javascript递归打印Document层次关系实例分析
- java实现归并排序算法
- oracle 使用递归的性能提示测试对比
- 使用curl递归下载软件脚本分享
- Perl脚本实现递归遍历目录下的文件
- JavaScript的递归之递归与循环示例介绍
- C# 递归查找树状目录实现方法
- 全排列算法的非递归实现与递归实现的方法(C++)
- php递归列出所有文件和目录的代码
- java递归菜单树转换成pojo对象
- 一个JavaScript递归实现反转数组字符串的实例
- Java中的递归详解(用递归实现99乘法表来讲解)