合并有序數(shù)組的實(shí)現(xiàn)(java與C語(yǔ)言)
合并有序數(shù)組的實(shí)現(xiàn)
java版本:
實(shí)例代碼
public class Merge {
//合并有序數(shù)組
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++];
}
//打印數(shù)組中的元素
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);
}
}
輸出結(jié)果:
1 2 3 5 6 8 9 10
C語(yǔ)言版
實(shí)現(xiàn)代碼:
#include <stdio.h>
// 打印數(shù)組a
void printArr(int a[],int n){
for (int i = 0; i < n; ++i)
{
printf("%d\t",a[i]);
}
printf("\n");
}
//合并有序數(shù)組
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);
}
輸出結(jié)果:
yaopans-MacBook-Pro:algorithm yaopan$ ./a.out 1 2 3 5 6
以上就是java與C語(yǔ)言實(shí)現(xiàn)合并有序數(shù)組的實(shí)例,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
SpringBoot項(xiàng)目部署到阿里云服務(wù)器的實(shí)現(xiàn)步驟
本文主要介紹了SpringBoot項(xiàng)目部署到阿里云服務(wù)器的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06
java實(shí)現(xiàn)文件上傳的詳細(xì)步驟
文件上傳是用戶將本地文件通過Web頁(yè)面提交到服務(wù)器的過程,涉及客戶端、服務(wù)器端、上傳表單等組件,在SpringBoot中,通過MultipartFile接口處理上傳文件,并將其保存在服務(wù)器,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10
java使用poi在excel單元格添加超鏈接設(shè)置字體顏色的方法
這篇文章主要介紹了java使用poi在excel單元格添加超鏈接,設(shè)置字體顏色,poi功能還是很強(qiáng)大的,基本能想到的功能都能通過poi實(shí)現(xiàn),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-09-09
搭建maven私有倉(cāng)庫(kù)的方法實(shí)現(xiàn)
Maven是一個(gè)流行的Java項(xiàng)目管理工具,它可以幫助我們管理項(xiàng)目的構(gòu)建、報(bào)告和文檔,本文主要介紹了搭建maven私有倉(cāng)庫(kù)的方法實(shí)現(xiàn),感興趣的可以了解一下2023-05-05
JavaSwing FlowLayout 流式布局的實(shí)現(xiàn)
這篇文章主要介紹了JavaSwing FlowLayout 流式布局的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Java中CyclicBarrier和CountDownLatch的用法與區(qū)別
CyclicBarrier和CountDownLatch這兩個(gè)工具都是在java.util.concurrent包下,并且平時(shí)很多場(chǎng)景都會(huì)使用到。本文將會(huì)對(duì)兩者進(jìn)行分析,記錄他們的用法和區(qū)別,感興趣的可以了解一下2021-08-08
Java用數(shù)組實(shí)現(xiàn)循環(huán)隊(duì)列的示例
下面小編就為大家?guī)硪黄狫ava用數(shù)組實(shí)現(xiàn)循環(huán)隊(duì)列的示例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09
Java使用設(shè)計(jì)模式中的代理模式構(gòu)建項(xiàng)目的實(shí)例展示
這篇文章主要介紹了Java使用設(shè)計(jì)模式中的代理模式構(gòu)建項(xiàng)目的實(shí)例展示,代理模式中的代理對(duì)象可以在客戶端和目標(biāo)對(duì)象之間起到中介的作用,需要的朋友可以參考下2016-05-05

