Sunteți pe pagina 1din 25

Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.

com/programcodes

SEARCH & SORTING


1. Sequential search in arrays
2. Sequetial search in linked list
3. Binary search in arrays
4. Bubble sorting
5. Selection sorting
6. Insertion sorting
7. Merge sorting
By DJVprogrammers

https://web.facebook.com/DJVprogrammers 1
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

SEARCHING

Sequential Search
#include<iostream>

using namespace std;

class searching

int arr[100];

int size,num,loc;

public:

searching()

cout<<"Enter Size of Array"<<endl;

cin>>size;

arr[size];

loc=-1;

input();

void input()

cout<<"\nEnter numbers in array\n"<<endl;

for(int i=0;i<size;i++)

https://web.facebook.com/DJVprogrammers 2
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

cin>>arr[i];

search_no();

void search_no()

cout<<"\nEnter Number you want to search from array"<<endl;

cin>>num;

search();

void search()

for(int i=0;i<size;i++)

if(num==arr[i])

loc=i+1;

break;

~searching()

https://web.facebook.com/DJVprogrammers 3
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

if(loc==-1)

cout<<"\nNumber not found "<<endl;

else

cout<<"\nNumber found at "<<loc<<endl;

};

int main()

searching s1;

Output:

https://web.facebook.com/DJVprogrammers 4
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

Sequential Search using linklist

#include<iostream>

using namespace std;

struct node

int data;

node*link;

node()

link=NULL;

};

class linklist

node*start,*cur,*temp;

public:

linklist()

start=NULL;

https://web.facebook.com/DJVprogrammers 5
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

creat_node (int n)

if(start==NULL)

start=new node;

start->link=NULL;

start->data=n;

else

cur=start;

while(cur->link!=NULL)

cur=cur->link;

temp=new node;

temp->data=n;

temp->link=NULL;

cur->link=temp;

https://web.facebook.com/DJVprogrammers 6
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

void searching(int s)

cur=start;

while(cur->data!=s)

if(cur->link==NULL)

cout<<"data not found"<<endl;

return ;

else

cur=cur->link;

cout<<"Data found "<<endl;

cout<<cur->data<<endl;

};

int main()

linklist l1;

int noofnodes,i,n;

https://web.facebook.com/DJVprogrammers 7
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

cout<<"how many numbers you want to create"<<endl;

cin>>noofnodes;

for(i=1;i<=noofnodes;i++)

cout<<"Enter data"<<endl;

cin>>n;

l1.creat_node(n);

cout<<"enter data you want to search"<<endl;

int s;

cin>>s;

l1.searching(s);

https://web.facebook.com/DJVprogrammers 8
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

Binary Search
#include<iostream>

using namespace std;

class searching

int arr[100];

int size,num,loc,mid;

public:

searching()

cout<<"Enter Size of Array"<<endl;

cin>>size;

arr[size];

mid=(1+size)/2;

loc=-1;

input();

void input()

cout<<"\nEnter numbers in array\n"<<endl;

https://web.facebook.com/DJVprogrammers 9
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

for(int i=0;i<size;i++)

cin>>arr[i];

search_no();

void search_no()

cout<<"\nEnter Number you want to search from array"<<endl;

cin>>num;

sorting();

void sorting()

int temp,i,j;

for(i=0;i<size;i++)

for(j=i;j<size;j++)

if(arr[i]>=arr[j])

temp=arr[i];

arr[i]=arr[j];

https://web.facebook.com/DJVprogrammers 10
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

arr[j]=temp;

cout<<"\nSORTED DATA\n";

for(i=0;i<size;i++)

cout<<arr[i]<<", ";

cout<<endl;

binary_search();

void binary_search()

if(arr[mid]==num)

loc=mid+1;

else if(arr[mid]>num)

for(int i=mid-1;i>=0;i--)

https://web.facebook.com/DJVprogrammers 11
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

if(num==arr[i])

loc=i+1;

break;

else

for(int i=mid;i<size;i++)

if(num==arr[i])

loc=i+1;

break;

https://web.facebook.com/DJVprogrammers 12
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

~searching()

if(loc==-1)

cout<<"\nNumber not found "<<endl;

else

cout<<"\nNumber found at "<<loc<<endl;

};

int main()

searching s1;

Output:

https://web.facebook.com/DJVprogrammers 13
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

Sorting

Bubble sorting
#include<iostream>

using namespace std;

class sorting

int arr[5];

int i,j,temp;

public:

sorting()

cout<<"Enter 5 values\n";

for(i=0;i<5;i++)

cin>>arr[i];

void bubble_sort()

for(j=4;j>=0;j--)

for(i=0;i<j;i++)

https://web.facebook.com/DJVprogrammers 14
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

if(arr[i]>=arr[i+1])

temp=arr[i];

arr[i]=arr[i+1];

arr[i+1]=temp;

void print()

cout<<"\nSorted values using Bubble sort\n";

for(i=0;i<5;i++)

cout<<arr[i]<<" ";

};

int main()

sorting s1;

s1.bubble_sort();

s1.print();

https://web.facebook.com/DJVprogrammers 15
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

Selection Sorting
#include<iostream>

using namespace std;

class sorting

int arr[5];

int i,j,temp,min,loc;

public:

sorting()

cout<<"Enter 5 values\n";

for(i=0;i<5;i++)

cin>>arr[i];

void selection_sort()

for(j=0;j<=4;j++)

https://web.facebook.com/DJVprogrammers 16
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

min=arr[j];

loc=j;

for(i=j;i<=4;i++)

if(min>arr[i])

min=arr[i];

loc=i;

temp=arr[loc];

arr[loc]=arr[j];

arr[j]=temp;

void print()

cout<<"\nSorted values using Selection sort\n";

for(i=0;i<5;i++)

cout<<arr[i]<<" ";

https://web.facebook.com/DJVprogrammers 17
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

};

int main()

sorting s1;

s1.selection_sort();

s1.print();

Insertion Sorting:
#include<iostream>

using namespace std;

class sorting

int arr[5];

int i,j,temp;

public:

sorting()

https://web.facebook.com/DJVprogrammers 18
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

cout<<"Enter 5 values\n";

for(i=0;i<5;i++)

cin>>arr[i];

void insertion_sort()

for(i=0;i<5;i++)

temp=arr[i];

for(j=i;j>0;j--)

if(temp<arr[j-1])

arr[j]=arr[j-1];

else

break;

arr[j]=temp;

/*

other logic

https://web.facebook.com/DJVprogrammers 19
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

for(i=0;i<5;i++)

temp=arr[i];

for(j=i;j>0 && temp<arr[j-1];j--)

arr[j]=arr[j-1];

arr[j]=temp;

*/

void print()

cout<<"\nSorted values using insertion sort\n";

for(i=0;i<5;i++)

cout<<arr[i]<<" ";

};

int main()

sorting s1;

https://web.facebook.com/DJVprogrammers 20
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

s1.insertion_sort();

s1.print();

Merge Sorting
#include<iostream>

using namespace std;

class sorting

int arr[10],a[5],b[5];

int i,j,k,temp,mid;

public:

sorting()

cout<<"Enter 10 values\n";

for(i=0;i<10;i++)

cin>>arr[i];

mid=10/2;

https://web.facebook.com/DJVprogrammers 21
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

void merge_sort()

//split 1st half... copying values in other array

for(i=0;i<mid;i++)

a[i]=arr[i];

//splitt 2nd half... copying values in other array

for(j=mid,i=0;j<10;j++,i++)

b[i]=arr[j];

//sorting 1st half using insertion sort

for(i=0;i<5;i++)

temp=a[i];

for(j=i;j>0 && temp<a[j-1];j--)

a[j]=a[j-1];

a[j]=temp;

//sorting 2nd half using insertion sort

for(i=0;i<5;i++)

temp=b[i];

for(j=i;j>0 && temp<b[j-1];j--)

https://web.facebook.com/DJVprogrammers 22
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

b[j]=b[j-1];

b[j]=temp;

//merging array a and array b with comparisons

// j is used for array a.... k is used for array b.. and i is used for arr

for(i=0,j=0,k=0;i<10;i++)

if(a[j]<=b[k] && j!=5 && k!=5)

arr[i]=a[j]; j++;

else if(a[j]>b[k] && j!=5 && k!=5)

arr[i]=b[k]; k++;

//it is for placing highest value to last index..

else

if(j==5) arr[i]=b[k];

else arr[i]=a[j];

https://web.facebook.com/DJVprogrammers 23
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

void print()

cout<<"\nSorted values using Merge sort"<<endl;

for(i=0;i<10;i++)

cout<<arr[i]<<" ";

};

int main()

sorting s1;

s1.merge_sort();

s1.print();

https://web.facebook.com/DJVprogrammers 24
Program.codes.cpp@gmail.com. https://programcodescpp.wixsite.com/programcodes

Website:
https://programcodescpp.wixsite.com/programcodes

Email
Program.codes.cpp@gmail.com

Facebook Page
https://web.facebook.com/DJVprogrammers

https://web.facebook.com/DJVprogrammers 25

S-ar putea să vă placă și