Posts

Showing posts with the label CPlus

Basic C++ Programs

Image

Heap Sort Program

#include < iostream . h > #include < conio . h > int heapsize , length ; void exchange ( int & a , int & b ) { int temp ; temp = a ; a = b ; b = temp ; } void maxheapify ( int a [ ] , int i ) { int l , r , largest , temp ; l = 2 * i ; //left[i] r = 2 * i + 1 ; //right[i] if ( l <= heapsize && a [ l ] > a [ i ] ) largest = l ; else largest = i ; if ( r <= heapsize && a [ r ] > a [ largest ] ) largest = r ; if ( largest != i ) { exchange ( a [ i ] , a [ largest ] ) ; maxheapify ( a , largest ) ; } } void buildmaxheap ( int a [ ] ) { heapsize = length ; for ( int i = length / 2 ; i >= 1 ; i -- ) maxheapify ( a , i ) ; } void heapsort ( int a [ ] ) { buildmaxheap ( a ) ; for ( int i = length ; i >= 2 ; i -- ) { exchange ( a [ 1 ] , a [ i ] ) ; heapsize -= 1 ; maxheapify ( a , 1 ) ; } } void main ( ) { clrscr...

Quick Sort Program

#include < iostream . h > #include < conio . h > int partition ( int a [ ] , int p , int r ) { int x , i , temp ; x = a [ r ] ; i = p - 1 ; for ( int j = p ; j < r ; j ++ ) { if ( a [ j ] <= x ) { i = i + 1 ; temp = a [ j ] ; a [ j ] = a [ i ] ; a [ i ] = temp ; } } temp = a [ i + 1 ] ; a [ i + 1 ] = a [ j ] ; a [ j ] = temp ; return i + 1 ; } void quicksort ( int a [ ] , int p , int r ) { int q ; if ( p < r ) { q = partition ( a , p , r ) ; quicksort ( a , p , q - 1 ) ; quicksort ( a , q + 1 , r ) ; } } void main ( ) { clrscr ( ) ; int * a , n ; cout << "\nEnter the no. of element you want:" ; cin >> n ; a = new int [ n ] ; //dynamically initialize array cout << "\nEnter the elements:\n" ; for ( int i = 0 ; i < n ; i ++ ) cin >> a [ i ] ; quicksort ( a , 0 , n - 1 ) ; cout << "\nSorted Array is:\n" ; fo...