Following is the working code : Time complexity : O(n^2) Space
complexity : O(1)
void swap(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}
/*num is the number which is searched in the array arr[]. index is the index
in the array arr[] by which the searched number is to be replaced*/
int searchAndReplace(int arr[],int size,int num,int index)
{
int i=index+1;
while(i<size)
{
if(arr[i]==num)
break;
i++;
}
if(i<size)
swap(&arr[i],&arr[index]);
}
void sort(int arr1[],int arr2[],int size)
{
int i=0,j;
while(i<size)
{
j=0;
while(j<size)
{
if(arr2[j]<arr1[i])
searchAndReplace(arr1,size,arr2[j],i);
j++;
}
i++;
}
}
int main()
{
int arr1[]={2,5,1,7};
int arr2[]={5,7,1,2};
sort(arr1,arr2,4);
int i;
for(i=0;i<4;i++)
printf("%d ",arr1[i]);
return 0;
}
--
You received this message because you are subscribed to the Google Groups
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/algogeeks?hl=en.