您的位置:首页 > 其它

合并两个有序序列

2016-09-13 18:36 239 查看
将两个有序的数列,合并成一个有序的序列

package toyprogram;

/**
* This class is used for ...
*
* @author dlf(460795365@qq.com)
* @version 1.0, 2016年9月13日 下午3:39:42
*/
public class AboutArrayl {

public static void main(String[] args) {
int[] a={1,4,6,9,22};
int[] b={3,7};

int[] c=mergetTwoSortedArray(a,b);

for(int i=0;i<c.length;i++)
System.out.print(c[i]+" ");
}

/**
* @param a
* @param b
* @return
*/
private static int[] mergetTwoSortedArray(int[] a, int[] b) {
int[] c=new int[a.length+b.length];
int i=0,j=0;
int k=0;
while(i<a.length&&j<b.length)
if (a[i]<b[j])
c[k++]=a[i++];
else
c[k++]=b[j++];

while (i<a.length)
c[k++]=a[i++];

while(j<b.length)
c[k++]=b[j++];

return c;
}

}


写完这个之后,我忽然想到如果不允许申请额外空间,那这个题怎么解决?
上面的要求可以理解为合并两个有序的链表,且不申请额外空间

我就不写代码了,大家看

http://www.cnblogs.com/zhizhan/p/5847044.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: