"How will you merge these two arrays? Write the program
Array: A 1 18 22 43
Array: B 3 4 6 20 34 46 55
Output Array: C 1 3 4 6 18 20 22 34 43 46 55"
Answers were Sorted based on User's Feedback
/*Program to merge two array & show them in shorted form */
#include<stdio.h>
#include<conio.h">
#define max 10
void main()
{
int a[max],b[max],c[2*max],i,j,k,n,m;
clrscr();
printf("size of array a:");
scanf("%d",&n);
printf("enter a elements: \n");
for(i=0;i<n;i++)
scanf("%d", &a[i]);
printf("size of array b:");
scanf("%d",&m);
printf("enter a elements: \n");
for(i=0;i<m;i++)
scanf("%d", &b[i]);
for(i=0,j=0,k=0; i<n && j<m; k++)
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++];
printf("\n array c:\n");
for(i=0;i<(m+n); i++)
printf("%d", c[i]);
getch();
}
| Is This Answer Correct ? | 19 Yes | 7 No |
Answer / naman patidar
above problem can be solved using marge sort technique.
here i am giving a solution in java.
public class MargeSort {
public static void main(String[] args) {
int a[] = { 2, 5, 7, 9, 10, 15 };
int b[] = { 1, 3, 4, 5, 12, 14 };
int c[] = new int[a.length + b.length];
int aIndex = 0, bIndex = 0, cIndex = 0;
while (aIndex < a.length && bIndex < b.length) {
if (a[aIndex] < b[bIndex]) {
c[cIndex++] = a[aIndex++];
} else {
c[cIndex++] = b[bIndex++];
}
}
if (aIndex < a.length) {
while (aIndex < a.length) {
c[cIndex++] = a[aIndex++];
}
}
if (bIndex < b.length) {
while (bIndex < b.length) {
c[cIndex++] = b[bIndex++];
}
}
for (int i = 0; i < c.length; i++) {
System.out.println(c[i]);
}
}
}
| Is This Answer Correct ? | 12 Yes | 7 No |
Answer / sandeep
#include<stdio.h>
#include<conio.h">
#define max 10
void main()
{
int a[max],b[max],c[2*max],i,j,k,n,m;
clrscr();
printf("size of array a:");
scanf("%d",&n);
printf("enter a elements: \n");
for(i=0;i<n;i++)
scanf("%d", &a[i]);
printf("size of array b:");
scanf("%d",&m);
printf("enter a elements: \n");
for(i=0;i<m;i++)
scanf("%d", &b[i]);
for(i=0,j=0,k=0; i<n && j<m; k++)
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++];
for(i=0;i<m+n-1;i++) //place each element in to correct position
{
for(j=i+1;j<m+n;j++)
{
if(c[i]>c[j]) //swapping
{
temp=c[i];
c[i]=c[j];
c[j]=temp;
}
}
}
printf("\n array c:\n");
for(i=0;i<(m+n); i++)
printf("%d", c[i]);
getch();
}
| Is This Answer Correct ? | 10 Yes | 7 No |
Answer / manish podiyal
#include<iostream.h>
class array
{
int a[15],b[15],c[15];
public:
void setdata()
{
a[10]={1,18,22,43,NULL};
b[10]={3,4,6,20,34,46,55,NULL};
}
void output()
{
while(a[i]!=NULL)
{
for(i=0;i<15;i++)
{
if(a[i]< b[i])
{
c[i]=a[i];
i++;
}
else if(a[i] > b[i])
{
c[i]=b[i];
i++;
}
}
}
if(a[i]==NULL)
{
c[i]=b[i];
i++;
}
}
};
void main()
{
array o;
o.setdata();
o.output();
}
| Is This Answer Correct ? | 28 Yes | 26 No |
Answer / mms zubeir
Though it seems bigger, I feel it's clean. See below:
void sortArray(int*array, int length)
{
if(length > 0)
for(int index = 0; index < length; ++index)
for(int cmpIndex = index + 1;
cmpIndex < length; ++cmpIndex)
{
int temp = 0;
if(array[index] > array
[cmpIndex])
{
temp = array[index];
array[index] = array
[cmpIndex];
array[cmpIndex] =
temp;
}
}
}
void addArray(int arrFirst[], int firstLen, int arrSecond
[], int secondLen, int arrResult[], int resultLen)
{
int resultIndex = 0;
for(int firstIndex = 0; firstIndex< firstLen;
++firstIndex)
arrResult[resultIndex++] = arrFirst
[firstIndex];
for(int secondIndex = 0; secondIndex < secondLen;
++secondIndex)
arrResult[resultIndex++] = arrSecond
[secondIndex];
}
void mergeArray(int arrFirst[], int firstLen, int arrSecond
[], int secondLen, int arrResult[], int resultLen)
{
addArray(arrFirst, firstLen, arrSecond, secondLen,
arrResult, resultLen);
sortArray(arrResult, resultLen);
}
| Is This Answer Correct ? | 11 Yes | 9 No |
Answer / sampath
hi friends !
i use java code it simple idea
class Sort
{
public static void main()
{
int A[]={1,18,22,43};
int B[]={3,4,6,20,34,46,55}
int lenA=A.length;
int lenB=B.length;
int n=lenA+lenB; //find the array size
int C[]=new int[n];
int i,j,temp;
for(i=0;i<n;i++) //copy the two array into C array
{
if(i<lenA)
C[i]=A[i];
else
C[i]=B[i-lenA];
}
for(i=0;i<n;i++) //place each element in to correct position
{
for(j=0;j<n;j++)
{
if(c[i]>c[j]) //swapping
{
temp=c[i];
c[i]=c[j];
c[j]=temp;
}
}
}
for(i=0;i<n;i++)// display output
{
System.Out.Print(c[i]+",");
}
}
| Is This Answer Correct ? | 5 Yes | 5 No |
Answer / naman patidar
public class MargeSort {
public static void main(String[] args) {
int a[] = { 2, 5, 7, 9, 10, 15 };
int b[] = { 1, 3, 4, 5, 12, 14 };
int c[] = new int[a.length + b.length];
int aIndex = 0, bIndex = 0, cIndex = 0;
while (aIndex < a.length && bIndex < b.length) {
if (a[aIndex] < b[bIndex]) {
c[cIndex++] = a[aIndex++];
} else {
c[cIndex++] = b[bIndex++];
}
}
while (aIndex < a.length) {
c[cIndex++] = a[aIndex++];
}
while (bIndex < b.length) {
c[cIndex++] = b[bIndex++];
}
for (int i = 0; i < c.length; i++) {
System.out.println(c[i]);
}
}
}
| Is This Answer Correct ? | 7 Yes | 14 No |
Answer / foreverkushal
void MergeArray(int *A1, int A1Count, int *A2, int A2Count,
int *A3, int A3Count)
{
int i = 0, j = 0, k = 0;
while(i != A1Count && j != A2Count)
{
if (A1[i] < A2[j]) A3[k++] = A1[i++];
else A3[k++] = A2[j++];
}
if (i != A1Count)
{
while (i < A1Count) A3[k++] = A1[i++];
}
if (j != A2Count)
{
while (i < A2Count) A3[k++] = A2[j++];
}
}
| Is This Answer Correct ? | 23 Yes | 43 No |
Design a program to input a date from user in the form day/month/year (e.g. 2/6/2000) and report whether it’s a valid date or not. The program should take account of leap years. You will need to know that a leap year is a year that is exactly divisible by 4, except that century years are only leap years if they are divisible by 400.
How to construct muliton object
What is the difference between global variables and static varables?
write a c++ program that gives output 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 using looping statement
When is the last time you coded in C/C++? What is the most lines of original C/C++ code you have personally written in one project? How confident are you in your ability to write C or C++ without a reference?
What things would you remember while making an interface?
What is singleton pattern in c++?
Explain terminate() and unexpected() function?
Can you pass an array to a function in c++?
Write a struct time where integer m, h, s are its members?
How can you tell what shell you are running on unix system?
Is ca high or low level language?