欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

合并有序數組的實現(java與C語言)

 更新時間:2017年08月01日 14:53:06   作者:姚_攀  
這篇文章主要介紹了合并有序數組的實現(java與C語言)的相關資料,這里對有序數組的合并分享了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 <stdio.h>
// 打印數組a
void printArr(int a[],int n){
  for (int i = 0; i < n; ++i)
  {
    printf("%d\t",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 <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++]; 

}
int main(){
  int a[3]={2,3,6};
  int b[2]={1,5};
  int c[5]={};
  mergeArray(a,3,b,2,c);
  printArr(c,5);
}

輸出結果:

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

以上就是java與C語言實現合并有序數組的實例,如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • python 與HFSS聯合仿真的教程講解

    python 與HFSS聯合仿真的教程講解

    這篇文章主要介紹了python 與HFSS聯合仿真的教程講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • SpringBoot項目部署到阿里云服務器的實現步驟

    SpringBoot項目部署到阿里云服務器的實現步驟

    本文主要介紹了SpringBoot項目部署到阿里云服務器的實現步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • java實現文件上傳的詳細步驟

    java實現文件上傳的詳細步驟

    文件上傳是用戶將本地文件通過Web頁面提交到服務器的過程,涉及客戶端、服務器端、上傳表單等組件,在SpringBoot中,通過MultipartFile接口處理上傳文件,并將其保存在服務器,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-10-10
  • java使用poi在excel單元格添加超鏈接設置字體顏色的方法

    java使用poi在excel單元格添加超鏈接設置字體顏色的方法

    這篇文章主要介紹了java使用poi在excel單元格添加超鏈接,設置字體顏色,poi功能還是很強大的,基本能想到的功能都能通過poi實現,本文結合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2023-09-09
  • 搭建maven私有倉庫的方法實現

    搭建maven私有倉庫的方法實現

    Maven是一個流行的Java項目管理工具,它可以幫助我們管理項目的構建、報告和文檔,本文主要介紹了搭建maven私有倉庫的方法實現,感興趣的可以了解一下
    2023-05-05
  • 關于Hadoop的HDFS集群

    關于Hadoop的HDFS集群

    這篇文章主要介紹了關于Hadoop的HDFS集群,Hadoop 如何配置集群、不同的計算機里又應該有怎樣的配置,這些問題是在學習中產生的。本章的配置中將會提供一個典型的示例,需要的朋友可以參考下
    2023-05-05
  • JavaSwing FlowLayout 流式布局的實現

    JavaSwing FlowLayout 流式布局的實現

    這篇文章主要介紹了JavaSwing FlowLayout 流式布局的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • Java中CyclicBarrier和CountDownLatch的用法與區(qū)別

    Java中CyclicBarrier和CountDownLatch的用法與區(qū)別

    CyclicBarrier和CountDownLatch這兩個工具都是在java.util.concurrent包下,并且平時很多場景都會使用到。本文將會對兩者進行分析,記錄他們的用法和區(qū)別,感興趣的可以了解一下
    2021-08-08
  • Java用數組實現循環(huán)隊列的示例

    Java用數組實現循環(huán)隊列的示例

    下面小編就為大家?guī)硪黄狫ava用數組實現循環(huán)隊列的示例。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Java使用設計模式中的代理模式構建項目的實例展示

    Java使用設計模式中的代理模式構建項目的實例展示

    這篇文章主要介紹了Java使用設計模式中的代理模式構建項目的實例展示,代理模式中的代理對象可以在客戶端和目標對象之間起到中介的作用,需要的朋友可以參考下
    2016-05-05

最新評論