/* Write a Program to perform the following operation stack using linklist. */
/* PUSH, POP, ISEMPTY, ISFULL, PEEP */
struct list
{
int info;
struct list *next;
}*start,*q,*node,*p;
#define max 4
void push();
void pop();
int isempty();
int isfull();
void peep();
void disp();
int top=-1,stack[max];
void main()
{
int ret,s1,choice;
clrscr();
start = '\0';
do
{
printf("\n\n1 : Push element in Stack.\n");
printf("2 : Pop an element from stack.\n");
printf("3 : Peep an element into stack.\n");
printf("4 : Exit from Program.\n");
printf("Enter your choice : ");
scanf("%d",&choice);
switch(choice)
{
case 1:
ret = isfull();
if(ret!=1)
push();
disp();
break;
case 2:
ret = isempty();
if(ret != 1)
pop();
disp();
break;
case 3:
ret = isempty();
if(ret != 1)
peep();
disp();
break;
case 4:
exit();
default :
printf("\n\n\t\t######## INVALID CHOICE ##########\n\n");
}
}while(s1);
}
int isfull()
{
if(top == max)
{
printf("\n\n\t\t####### STCK IS OVERFLOW #########\n\n");
return 1;
}
else
return 0;
}
int isempty()
{
if(top == -1)
{
printf("\n\n\t\t####### STCK IS UNDERFLOW #########\n\n");
return 1;
}
else
return 0;
}
void push()
{
int item;
printf("\nEnter an Integer value : ");
scanf("%d",&item);
top = top + 1;
node = (struct list *)malloc(sizeof(struct list));
node->info = item;
node->next = '\0';
p = start;
if (start == '\0')
start = node;
else
{
while(p->next != '\0')
p = p->next;
p->next = node;
}
}
void pop()
{
int item;
q = start;
p = start->next;
while(p->next!='\0')
{
p = p->next;
q = q->next;
}
item = p->info;
if(p==start)
start = '\0';
q->next='\0';
top = top -1;
printf("\n\n\t\t%d is deleted\n",item);
}
void peep()
{
int item,q;
printf("\n\nEnter position : ");
scanf("%d",&q);
p = start;
while(q<=top)
{
p = p->next;
q++;
}
printf("\n\nYour selected Element is %d ",p->info);
}
void disp()
{
p = start;
printf("\n\nStack Contains : ");
while(p!='\0')
{
printf("%d ",p->info);
p = p->next;
}
}
|
|
---|
Showing posts with label DS. Show all posts
Showing posts with label DS. Show all posts
Sunday, February 27, 2011
STAKLINK
Labels:
DS,
mca2,
programme,
Programming Skills-II,
STAKLINK
STAARRAY
/* Write a Program to perform the following operation stack using array. */
/* PUSH, POP, ISEMPTY, ISFULL, PEEP */
#define max 4
void push();
void pop();
int isempty();
int isfull();
void peep();
void disp();
int top=-1,stack[max];
void main()
{
int ret,s1,choice;
clrscr();
do
{
printf("\n\n1 : Push element in Stack.\n");
printf("2 : Pop an element from stack.\n");
printf("3 : Peep an element into stack.\n");
printf("4 : Exit from Program.\n");
printf("Enter your choice : ");
scanf("%d",&choice);
switch(choice)
{
case 1:
ret = isfull();
if(ret!=1)
push();
disp();
break;
case 2:
ret = isempty();
if(ret != 1)
pop();
disp();
break;
case 3:
ret = isempty();
if(ret != 1)
peep();
disp();
break;
case 4:
exit();
default :
printf("\n\n\t\t######## INVALID CHOICE ##########\n\n");
}
}while(s1);
}
int isfull()
{
if(top == max)
{
printf("\n\n\t\t####### STCK IS OVERFLOW #########\n\n");
return 1;
}
else
return 0;
}
int isempty()
{
if(top == -1)
{
printf("\n\n\t\t####### STCK IS UNDERFLOW #########\n\n");
return 1;
}
else
return 0;
}
void push()
{
int item;
printf("\nEnter an Integer value : ");
scanf("%d",&item);
top = top + 1;
stack[top] = item;
}
void pop()
{
int item;
item = stack[top];
top = top -1;
printf("\n\n\t\t%d is deleted\n",item);
}
void peep()
{
int item,p;
printf("\n\nEnter position : ");
scanf("%d",&p);
printf("\n\nYour selected Element is %d ",stack[top-p+1]);
}
void disp()
{
int i;
printf("\n\nStack Contains : ");
for(i=0;i<=top;i++)
printf("%d ",stack[i]);
}
postfix
/* Write a Program for to evaluate postfix expression */
char postfix[100];
static i,top;
long int stack[20];
void main()
{
int temp,p;
clrscr();
printf("Enter Postfix Expression : ");
scanf("%s",postfix);
for(i=0;postfix[i]!='\0';i++)
{
if(postfix[i]=='$' || postfix[i]=='^')
{
temp = stack[top-1];
p = stack[top-2];
while(temp>1)
{
stack[top-2] *=p;
temp--;
}
top--;
}
else if(postfix[i] == '+')
{
stack[top-2] += stack[top-1];
top--;
}
else if(postfix[i] == '-')
{
stack[top-2] -= stack[top-1];
top--;
}
else if(postfix[i] == '*')
{
stack[top-2] *= stack[top-1];
top--;
}
else if(postfix[i] == '/')
{
stack[top-2] /= stack[top-1];
top--;
}
else if(postfix[i]!=',')
{
stack[top] = postfix[i]-48;
while(postfix[i+1]!=',')
{
stack[top] *= 10 + postfix[i+1]-48;
i++;
}
top++;
}
}
printf("\nValue of Postfix Expression : %ld",stack[top-1]);
getch();
}
Labels:
DS,
material,
postfix,
Programming Skills-II
new | DS
#include
#include
#include
void main()
{
int n,i, *p,*q;
clrscr();
printf("Howmany number that u want to store : ");
scanf("%d",&n);
p = new int[n];
q=p;
printf("Enter %d Elements : \n",n);
for(i=0;i {
scanf("%d",p);
p++;
}
printf("An array will Contains : ");
for(i=0;i {
printf("%d ",*q);
q++;
}
getch();
}
#include
#include
void main()
{
int n,i, *p,*q;
clrscr();
printf("Howmany number that u want to store : ");
scanf("%d",&n);
p = new int[n];
q=p;
printf("Enter %d Elements : \n",n);
for(i=0;i
scanf("%d",p);
p++;
}
printf("An array will Contains : ");
for(i=0;i
printf("%d ",*q);
q++;
}
getch();
}
Labels:
DS,
material,
New,
Programming Skills-II
GCD
/* Write a Program for to find the GCD of two numbers */
int gcd(int,int)
void main()
{
int no1,no2,ans;
clrscr();
printf("Enter Integer Number : ");
scanf("%d",&no1);
printf("Enter Second Number: ");
scanf("%d",&no2);
ans = gcd(no1,no2);
printf("GCD of two Number is : %d",ans);
getch();
}
int gcd(int m,int n)
{
if(n == 0)
return m;
else
gcd(n,(m%n));
}
Labels:
DS,
GCD,
LINK LIST,
Programming Skills-II
Doubly
/* Write a Program to create doubly linklist */
void first();
void last();
void disp();
void specific();
struct doubly
{
int info;
struct doubly *lptr,*rptr;
}*node,*l,*r,*p;
void main()
{
int item,choice,s1;
clrscr();
printf("Enter an item 99 for stop : ");
scanf("%d",&item);
node = (struct doubly *)malloc( sizeof(struct doubly));
l = r = p = node;
if(item == 99)
r = l = '\0';
while(item!=99)
{
node->info = item;
p->rptr = node; //This two line make left to right link
p = p->rptr;
node->lptr = r; //this three line make right to left link
// r->rptr = node;
r = node;
node->rptr = '\0';
node = (struct doubly *)malloc(sizeof(struct doubly));
scanf("%d",&item);
}
/* The above while loop will create doubly link list whose left node adress
is stored in l and right node address is stored in r */
l->lptr = '\0';
disp(); //Disp function is display left and right traversal.
do
{
printf("\n\n1 : Insert first.\n");
printf("2 : Insert Last.\n");
printf("3 : Insert Specific Position\n");
printf("4 : Exit from Program.\n");
printf("\nEnter Your Choice : ");
scanf("%d",&choice);
switch(choice)
{
case 1:
first();
disp();
break;
case 2 :
last();
disp();
break;
case 3 :
specific();
disp();
break;
case 4 :
exit();
default:
printf("\n\n\t\t######## INVALID CHOICE #########\n\n");
}
printf("\n\nDo you want to continue? if yes, press 1 : ");
scanf("%d",&s1);
}while(s1==1);
}
void disp()
{
p = l;
printf("\nLeft Traversal : ");
while(p!='\0')
{
printf("%d ",p->info);
p = p->rptr;
}
p = r;
printf("\nRight Traversal : ");
while(p!='\0')
{
printf("%d ",p->info);
p = p->lptr;
}
}
void first()
{
int item;
printf("Enter an integer value : ");
scanf("%d",&item);
node = (struct doubly *)malloc( sizeof(struct doubly));
node->lptr = '\0';
node->info = item;
node->rptr = l;
l->lptr = node;
l=node;
if(r == '\0')
r = l;
}
void last()
{
int item;
printf("Enter an integer value : ");
scanf("%d",&item);
node = (struct doubly *)malloc( sizeof(struct doubly));
node->rptr = '\0';
node->info = item;
node->lptr = r;
r->rptr = node;
r=node;
if(l=='\0')
l = r;
}
void specific()
{
int item,z,n=2;
printf("Enter an integer value : ");
scanf("%d",&item);
printf("Enter Position : ");
scanf("%d",&z);
node = (struct doubly *)malloc( sizeof(struct doubly));
node->info = item;
p = l;
if(z==1)
{
node->lptr = '\0';
node->rptr = l;
l->lptr = node;
l=node;
if(r=='\0')
r = l;
}
else
{
while(z>n)
{
p = p->rptr;
if(p == '\0')
{
printf("\n\n\t\tPosition is Not Found\n");
return;
}
z--;
}
if(p->rptr=='\0')
{
node->rptr = '\0';
p->rptr = node;
node->lptr = p;
p = node;
r = p;
}
else
{
p->rptr->lptr = node;
node->rptr = p->rptr;
p->rptr = node;
node->lptr = p;
}
}
}
Labels:
Doubly,
DS,
material,
Programming Skills-II
Bisection method
/* Write a Program to solve equation using Bisection Method */
#include
float bisection(float,float,float);
void main()
{
float xl,xu,ea,fxr;
clrscr();
printf("Enter Lower Bound : ");
scanf("%f",&xl);
printf("Enter Upper Bound : ");
scanf("%f",&xu);
printf("Enter Percentage Error : ");
scanf("%f",&ea);
fxr = bisection(xl,xu,ea);
printf("F(xr) : %.2f",fxr);
getch();
}
float bisection(float xl,float xu,float ea)
{
float xr,fxr,tmp;
do
{
xr = (xl + xu) / 2;
fxr = ((xr*xr*xr) -9 * xr + 1);
if(fxr*xu < 0)
xu = xr;
else if(fxr*xu>0)
xl = xr;
else
xr = 0;
if(fxr<0)
tmp = fxr * -1;
}while(tmp>ea);
return xr;
}
Labels:
Bisection method,
DS,
material,
mca matirial,
programme
620002 Programming Skills – II (DS)
Programming Skills II(DS) All Programs
DS All programs by Lecturer only for suggestion
DS All programs Collection
DS All programs Collection
DS programs in C++
DS All programs by Lecturer only for suggestion
New! shared by:
Ms. Zarana Upadhyay (Lecturer - NSVKMS MCA College, Visnagar )
shared by: Vipul (SVICS - KADI)
DS All programs Collection
shared by: Chirag M Daxini
(L.J. Institute Of Engineering & Technology - Ahmedabad)
DS programs in C++
shared by: ANAND A PANDYA (SSIT-GandhiNagar)
Different operations on SINGLY LINK LIST shared by: Ajay A Ardeshana
Lecturer
MCA Department
GARDI VIDYAPITH
Data Structure ProgramsLecturer
MCA Department
GARDI VIDYAPITH
shared by: SadikHasan (SVICS -KADI)
Program that implements depth first search algorithm.
Program that implements breadth first search algorithm
Program to find the minimum cost of a spanning tree
Program to find the minimum cost of a spanning tree(((Download)))
shared by: Sanjay Patel,
Programmer,
CyberQ Consulting,
M-9427320343.
Programmer,
CyberQ Consulting,
M-9427320343.
Labels:
620002,
all institute's paper,
DS,
program,
Programming Skills-II
620001 Data Structures (DS)
Full DS by keval.rar
Shared By:Keval Nagaria(JVIMS MCA Jamnagar)
Data Structure By Hiren Vyas.rar
shared by : Hiren Vyas
Objective Questions With Key.pdf shared by : Vipul Joshi (SVICS - KADI)
ds question bank.rar
shared by : Sandip Patel (ldrp)
Labels:
620001,
Data Structure,
DS,
free download matirials,
mca2,
sem2
Subscribe to:
Posts (Atom)