首页 > 代码库 > 合并两个已经排好序的不等长的数组
合并两个已经排好序的不等长的数组
给两个已经排好序的数组。这两个数组的长度可能不相等。怎样将他们合并?
package airth; public class TestMergeArray { /** * 功能: * 作者: jiangfuqiang * 创建日期:2014-10-13 * 改动者: mender * 改动日期: modifydate * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int[] a = {1,3,5,7}; int[] b = {0,4,8}; int[] c = new int[a.length + b.length]; int index = 0; int count = 0; int times = 0; for (int i = 0; i < b.length; i++) { for(int j = count; j < a.length; j++) { if(b[i] < a[j]) { c[index++] = b[i]; times++; break; } else { count++; c[index++] = a[j]; } } } //推断假设短数组中还有未被利用的数据。则增加新数组的最后面 while(times < b.length) { c[index++] = b[times++]; } for(int i = 0; i< c.length; i++) { System.out.println(c[i]); } } }
合并两个已经排好序的不等长的数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。