#include<iostream> #include<iomanip> using namespace std; void divide(int [],int ,int); void merge(int [],int,int,int); int main() { int i,j,k,temp,n; cout<<"\nenter the no of integers : "; cin>>n; int a[n]; cout<<"\nenter the integers : "; for(i=0;i<n;i++) { cin>>a[i]; } cout<<"\narray before sorting : "; for(i=0;i<n;i++) { cout<<a[i]<<" "; } cout<<"\n"; divide(a,0,n-1); cout<<"\nafter sorting : "; for(i=0;i<n;i++) { cout<<a[i]<<" "; } cout<<"\n"; return 0; } void divide(int a[],int min ,int max) { int mid; if(min<max) { mid=(max+min)/2; divide(a,min,mid); divide(a,(mid+1),max); merge(a,min,mid,max); } } void merge(int a[],int min,int mid,int max) { int temp[max],i,j,k,l,m; j=min; m=mid+1; for(i=min;(j<=mid && m<=max);i++) { if(a[j]<=a[m]) { temp[i]=a[j]; j++; } else { temp[i]=a[m]; m++; } } if(j>mid) { for(k=m;k<=max;k++) { temp[i]=a[k]; i++; } } else { for(k=j;k<=mid;k++) { temp[i]=a[k]; i++; } } for(k=min;k<=max;k++) { a[k]=temp[k]; } }
Labels
Popular Posts
-
Binary Tree: A Tree in which each node has a degree of atmost 2. i.e. it can have either 0,1 or 2 children. Here, leaves a...
-
Recurrence relation : A recurrence relation is an equation that defines a sequence based on a rule that gives the next term as a funct...
-
BUBBLE SORT : Bubble sort is a simple sorting algorithm ...
Blog Archive
- March 2017 (1)
- March 2016 (1)
- October 2015 (1)
- September 2015 (1)
- August 2015 (5)
- July 2015 (2)
- June 2015 (4)
- January 2015 (4)
- December 2014 (5)
- November 2014 (1)
- October 2014 (1)
- September 2014 (3)
Powered by Blogger.