栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

合并有序数组的实现(java与C语言)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

合并有序数组的实现(java与C语言)

合并有序数组的实现

java版本:

实例代码

public class Merge {

  //合并有序数组
  public static void mergeSort(int a[], int b[], int c[]) {
    int n = a.length, m = b.length;
    int i, j, k;
    i = j = k = 0;

    while (i < n && j < m) {
      if (a[i] < b[j]) {
 c[k++] = a[i++];
      } else {
 c[k++] = b[j++];
      }

    }
    while (i < n)
      c[k++] = a[i++];
    while (j < m)
      c[k++] = b[j++];
  }

  //打印数组中的元素
  public static void printArr(int a[]) {
    for (int i = 0; i < a.length; i++) {
      System.out.print(a[i] + "t");
    }
  }

  public static void main(String[] args) {
    System.out.println("Hello World!");
    int[] a = new int[] { 1, 2, 5, 6 };
    int[] b = new int[] { 3, 8, 9, 10 };
    int c[] = new int[8];

    mergeSort(a, b, c);
    printArr(c);
  }
}

输出结果:

1  2  3  5  6  8  9  10

C语言版

实现代码:

#include 
// 打印数组a
void printArr(int a[],int n){
  for (int i = 0; i < n; ++i)
  {
    printf("%dt",a[i]);
  }
  printf("n");
}
//合并有序数组
void mergeArray(int a[],int n,int b[],int m,int c[]){
  int i, j, k; 

  i = j = k = 0; 
  while (i 

输出结果:

yaopans-MacBook-Pro:algorithm yaopan$ ./a.out 
1  2  3  5  6

以上就是java与C语言实现合并有序数组的实例,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/145048.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号