tag:blogger.com,1999:blog-91383884712427944662024-02-20T03:45:16.032-08:00Datastructure using javaCusat CS 4th semester lab cycle 09-10Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.comBlogger18125tag:blogger.com,1999:blog-9138388471242794466.post-25213076642116573652017-10-14T00:37:00.000-07:002017-10-14T00:40:50.571-07:00More Programzz<a href='http://arunramesh4u.blogspot.com/'><h4><span style='color:#34c9eb;'>Home</span></h4></a><br />
<a href='http://programmingwith8085.blogspot.com/'><h4><span style='color:#34c9eb;'>8085 programming</span></h4></a><br />
<a href='http://c-plus-plus-programs.blogspot.com/'><h4><span style='color:#34c9eb;'>C++ Programz</span></h4></a><br />
<a href="http://graphics-using-c.blogspot.com/"><h4><span style='color:#34c9eb;'>Graphics programming</span></h4></a><br />
<a href="http://programmingwith8086.blogspot.com/"><h4><span style='color:#34c9eb;'>8086 Programming</span></h4></a><br />
<a href="http://language-processor.blogspot.com/"><h4><span style='color:#34c9eb;'>LEX, YACC and parsers </span></h4></a><br />
<a href="http://network-os.blogspot.com/"><h4><span style='color:#34c9eb;'>Operating System</span></h4></a><br />
<a href='http://solveyoursudoku.blogspot.com/'><h4><span style='color:#f54257;'>Solve Your Sudoku</span></h4></a>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-71271939782795858402010-04-05T23:46:00.000-07:002016-11-06T04:59:45.230-08:00Polynomial Addition------simple<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> exp,coeff;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> next;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
coeff=x;
exp=y;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b>if</b>(coeff<<span style='color:#b08000;'>0</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(coeff+<span style='color:#bf0303;'>"x^"</span>+exp);
<b>else</b>
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"+"</span>+coeff+<span style='color:#bf0303;'>"x^"</span>+exp);
}
}
<b>class</b> LinkList
{
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> first;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> last;
<b>public</b> <span style='color:#644a9b;'>LinkList</span>()
{
first=<b>null</b>;
last=<b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertLast</span>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x,y);
<b>if</b>(<span style='color:#644a9b;'>isEmpty</span>())
first=newNode;
<b>else</b>
last.<span style='color:#644a9b;'>next</span>=newNode;
last=newNode;
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b>(first==<b>null</b>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>display</span>()
{
<b><span style='color:#0095ff;'>Node</span></b> current=first;
<b>while</b>(current != <b>null</b>)
{
current.<span style='color:#644a9b;'>displayNode</span>();
current=current.<span style='color:#644a9b;'>next</span>;
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>();
}
}
<b>class</b> Polynomial
{
<b>private</b> LinkList l1;
<b>public</b> <span style='color:#644a9b;'>Polynomial</span>()
{
l1=<b>new</b> <span style='color:#644a9b;'>LinkList</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayPoly</span>()
{
l1.<span style='color:#644a9b;'>display</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>add</span>(Polynomial poly1,Polynomial poly2)
{
<span style='color:#0057ae;'>int</span> x,y;
<b><span style='color:#0095ff;'>Node</span></b> current1=poly1.<span style='color:#644a9b;'>l1</span>.<span style='color:#644a9b;'>first</span>;
<b><span style='color:#0095ff;'>Node</span></b> current2=poly2.<span style='color:#644a9b;'>l1</span>.<span style='color:#644a9b;'>first</span>;
<b>while</b>(current1!=<b>null</b>&&current2!=<b>null</b>)
{
<b>if</b>(current1.<span style='color:#644a9b;'>exp</span>==current2.<span style='color:#644a9b;'>exp</span>)
{
x=current1.<span style='color:#644a9b;'>coeff</span>+current2.<span style='color:#644a9b;'>coeff</span>;
y=current1.<span style='color:#644a9b;'>exp</span>;
current1=current1.<span style='color:#644a9b;'>next</span>;
current2=current2.<span style='color:#644a9b;'>next</span>;
}
<b>else</b> <b>if</b>(current1.<span style='color:#644a9b;'>exp</span>>current2.<span style='color:#644a9b;'>exp</span>)
{
x=current1.<span style='color:#644a9b;'>coeff</span>;
y=current1.<span style='color:#644a9b;'>exp</span>;
current1=current1.<span style='color:#644a9b;'>next</span>;
}
<b>else</b>
{
x=current2.<span style='color:#644a9b;'>coeff</span>;
y=current2.<span style='color:#644a9b;'>exp</span>;
current2=current2.<span style='color:#644a9b;'>next</span>;
}
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
<b>while</b>(current1!=<b>null</b>)
{
x=current1.<span style='color:#644a9b;'>coeff</span>;
y=current1.<span style='color:#644a9b;'>exp</span>;
current1=current1.<span style='color:#644a9b;'>next</span>;
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
<b>while</b>(current2!=<b>null</b>)
{
x=current2.<span style='color:#644a9b;'>coeff</span>;
y=current2.<span style='color:#644a9b;'>exp</span>;
current2=current2.<span style='color:#644a9b;'>next</span>;
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
}
}
<b>class</b> PolyAdd
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<span style='color:#0057ae;'>int</span> n,co,ex=<span style='color:#b08000;'>1</span>;
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
Polynomial p1=<b>new</b> <span style='color:#644a9b;'>Polynomial</span>();
Polynomial p2=<b>new</b> <span style='color:#644a9b;'>Polynomial</span>();
Polynomial p3=<b>new</b> <span style='color:#644a9b;'>Polynomial</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the 1st polynomial"</span>);
<b>while</b>(ex!=<span style='color:#b08000;'>0</span>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the coefficent "</span>);
co=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the exponent"</span>);
ex=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
p1.<span style='color:#644a9b;'>insert</span>(co,ex);
}
ex=<span style='color:#b08000;'>1</span>;
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the 2nd polynomial"</span>);
<b>while</b>(ex!=<span style='color:#b08000;'>0</span>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the coefficent "</span>);
co=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the exponent"</span>);
ex=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
p2.<span style='color:#644a9b;'>insert</span>(co,ex);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"1st Polynomial:- "</span>);
p1.<span style='color:#644a9b;'>displayPoly</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"2nd Polynomial:- "</span>);
p2.<span style='color:#644a9b;'>displayPoly</span>();
p3.<span style='color:#644a9b;'>add</span>(p1,p2);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Added Polynomial:- "</span>);
p3.<span style='color:#644a9b;'>displayPoly</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com3tag:blogger.com,1999:blog-9138388471242794466.post-86853456284606863752010-03-16T10:30:00.000-07:002016-11-06T05:11:15.417-08:00Implement a minimum spanning tree for a given graph<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Stack</span></b>
{
<b>private</b> <span style='color:#0057ae;'>int</span> size;
<b>private</b> <span style='color:#0057ae;'>int</span>[] st;
<b>private</b> <span style='color:#0057ae;'>int</span> top;
<b>public</b> <b><span style='color:#0095ff;'>Stack</span></b>(<span style='color:#0057ae;'>int</span> s)
{
size=s;
st=<b>new</b> <span style='color:#0057ae;'>int</span>[size];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<span style='color:#0057ae;'>int</span> key)
{
st[++top]=key;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(st[top--]);
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>peek</span>()
{
<b>return</b>(st[top]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b> (top==-<span style='color:#b08000;'>1</span>);
}
}
<b>class</b> Vertex
{
<b>public</b> <span style='color:#0057ae;'>char</span> label;
<b>public</b> <span style='color:#0057ae;'>boolean</span> wasVisited;
<b>public</b> <span style='color:#644a9b;'>Vertex</span>(<span style='color:#0057ae;'>char</span> lab)
{
label=lab;
wasVisited=<b>false</b>;
}
}
<b>class</b> Graph
{
<b>private</b> <span style='color:#0057ae;'>int</span> maxVertex;
<b>private</b> Vertex vertexList[];
<b>private</b> <span style='color:#0057ae;'>int</span> adjMat[][];
<b>private</b> <span style='color:#0057ae;'>int</span> nVert;
<b>private</b> <b><span style='color:#0095ff;'>Stack</span></b> theStack;
<b>public</b> <span style='color:#644a9b;'>Graph</span>(<span style='color:#0057ae;'>int</span> s)
{
maxVertex=s;
vertexList=<b>new</b> Vertex[maxVertex];
adjMat=<b>new</b> <span style='color:#0057ae;'>int</span>[maxVertex][maxVertex];
nVert=<span style='color:#b08000;'>0</span>;
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<maxVertex;j++)
<b>for</b>(<span style='color:#0057ae;'>int</span> k=<span style='color:#b08000;'>0</span>;k<maxVertex;k++)
adjMat[j][k]=<span style='color:#b08000;'>0</span>;
theStack=<b>new</b> <b><span style='color:#0095ff;'>Stack</span></b>(s);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>addVertex</span>(<span style='color:#0057ae;'>char</span> lab)
{
<b>if</b>(nVert==maxVertex)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Vertex limit exceeded "</span>);
<b>else</b>
vertexList[nVert++]=<b>new</b> <span style='color:#644a9b;'>Vertex</span>(lab);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>addEdge</span>(<span style='color:#0057ae;'>char</span> start,<span style='color:#0057ae;'>char</span> end)
{
<span style='color:#0057ae;'>int</span> i,j;
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
<b>if</b>(vertexList[j].<span style='color:#644a9b;'>label</span>==start)
<b>break</b>;
<b>for</b>(i=<span style='color:#b08000;'>0</span>;i<nVert;i++)
<b>if</b>(vertexList[i].<span style='color:#644a9b;'>label</span>==end)
<b>break</b>;
<b>if</b>(i==nVert||j==nVert)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Vertex not found"</span>);
<b>else</b>
{
adjMat[j][i]=<span style='color:#b08000;'>1</span>;
adjMat[i][j]=<span style='color:#b08000;'>1</span>;
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayVertex</span>(<span style='color:#0057ae;'>int</span> v)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(vertexList[v].<span style='color:#644a9b;'>label</span>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>mst</span>()
{
vertexList[<span style='color:#b08000;'>0</span>].<span style='color:#644a9b;'>wasVisited</span>=<b>true</b>;
theStack.<span style='color:#644a9b;'>push</span>(<span style='color:#b08000;'>0</span>);
<b>while</b>(!theStack.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>int</span> currentVertex=theStack.<span style='color:#644a9b;'>peek</span>();
<span style='color:#0057ae;'>int</span> v=<span style='color:#644a9b;'>getAdjUnvisitedVertex</span>(currentVertex);
<b>if</b>(v==-<span style='color:#b08000;'>1</span>)
theStack.<span style='color:#644a9b;'>pop</span>();
<b>else</b>
{
vertexList[v].<span style='color:#644a9b;'>wasVisited</span>=<b>true</b>;
theStack.<span style='color:#644a9b;'>push</span>(v);
<span style='color:#644a9b;'>displayVertex</span>(currentVertex);
<span style='color:#644a9b;'>displayVertex</span>(v);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>" "</span>);
}
}
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
vertexList[j].<span style='color:#644a9b;'>wasVisited</span>=<b>false</b>;
}
<b>private</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>getAdjUnvisitedVertex</span>(<span style='color:#0057ae;'>int</span> v)
{
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
<b>if</b>(adjMat[v][j]==<span style='color:#b08000;'>1</span>&&vertexList[j].<span style='color:#644a9b;'>wasVisited</span>==<b>false</b>)
<b>return</b> j;
<b>return</b> -<span style='color:#b08000;'>1</span>;
}
}
<b>class</b> MSTApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the limit of vertexes"</span>);
<span style='color:#0057ae;'>int</span> max=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
Graph g=<b>new</b> <span style='color:#644a9b;'>Graph</span>(max);
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Menu"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Add Vertex"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Add Edge"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.MST"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
<span style='color:#0057ae;'>int</span> n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the vertex"</span>);
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
<span style='color:#0057ae;'>char</span> a=s.<span style='color:#644a9b;'>charAt</span>(<span style='color:#b08000;'>0</span>);
g.<span style='color:#644a9b;'>addVertex</span>(a);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue inserting"</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the edge"</span>);
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
g.<span style='color:#644a9b;'>addEdge</span>(s.<span style='color:#644a9b;'>charAt</span>(<span style='color:#b08000;'>0</span>),s.<span style='color:#644a9b;'>charAt</span>(<span style='color:#b08000;'>1</span>));
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue inserting"</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Minimum Spaning Tree"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------------"</span>);
g.<span style='color:#644a9b;'>mst</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid Choice"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-48316479921785825772010-03-16T10:27:00.000-07:002016-11-06T05:09:05.813-08:00Implement BFS and DFS for a given graph15.Implement BFS and DFS for a given graph. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Stack</span></b>
{
<b>private</b> <span style='color:#0057ae;'>int</span> size;
<b>private</b> <span style='color:#0057ae;'>int</span>[] st;
<b>private</b> <span style='color:#0057ae;'>int</span> top;
<b>public</b> <b><span style='color:#0095ff;'>Stack</span></b>(<span style='color:#0057ae;'>int</span> s)
{
size=s;
st=<b>new</b> <span style='color:#0057ae;'>int</span>[size];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<span style='color:#0057ae;'>int</span> key)
{
st[++top]=key;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(st[top--]);
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>peek</span>()
{
<b>return</b>(st[top]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b> (top==-<span style='color:#b08000;'>1</span>);
}
}
<b>class</b> <b><span style='color:#0095ff;'>Queue</span></b>
{
<b>private</b> <span style='color:#0057ae;'>int</span> size;
<b>private</b> <span style='color:#0057ae;'>int</span>[] queArray;
<b>private</b> <span style='color:#0057ae;'>int</span> front;
<b>private</b> <span style='color:#0057ae;'>int</span> rear;
<b>public</b> <b><span style='color:#0095ff;'>Queue</span></b>(<span style='color:#0057ae;'>int</span> s)
{
size=s;
queArray=<b>new</b> <span style='color:#0057ae;'>int</span>[size];
front=<span style='color:#b08000;'>0</span>;
rear=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>(<span style='color:#0057ae;'>int</span> j)
{
<b>if</b>(rear==size-<span style='color:#b08000;'>1</span>)
rear=-<span style='color:#b08000;'>1</span>;
queArray[++rear]=j;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>remove</span>()
{
<span style='color:#0057ae;'>int</span> temp=queArray[front++];
<b>if</b>(front==size)
front=<span style='color:#b08000;'>0</span>;
<b>return</b> temp;
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b>(rear+<span style='color:#b08000;'>1</span>==front||(front+size-<span style='color:#b08000;'>1</span>==rear));
}
}
<b>class</b> Vertex
{
<b>public</b> <span style='color:#0057ae;'>char</span> label;
<b>public</b> <span style='color:#0057ae;'>boolean</span> wasVisited;
<b>public</b> <span style='color:#644a9b;'>Vertex</span>(<span style='color:#0057ae;'>char</span> lab)
{
label=lab;
wasVisited=<b>false</b>;
}
}
<b>class</b> Graph
{
<b>private</b> <span style='color:#0057ae;'>int</span> maxVertex;
<b>private</b> Vertex vertexList[];
<b>private</b> <span style='color:#0057ae;'>int</span> adjMat[][];
<b>private</b> <span style='color:#0057ae;'>int</span> nVert;
<b>private</b> <b><span style='color:#0095ff;'>Stack</span></b> theStack;
<b>private</b> <b><span style='color:#0095ff;'>Queue</span></b> theQueue;
<b>public</b> <span style='color:#644a9b;'>Graph</span>(<span style='color:#0057ae;'>int</span> s)
{
maxVertex=s;
vertexList=<b>new</b> Vertex[maxVertex];
adjMat=<b>new</b> <span style='color:#0057ae;'>int</span>[maxVertex][maxVertex];
nVert=<span style='color:#b08000;'>0</span>;
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<maxVertex;j++)
<b>for</b>(<span style='color:#0057ae;'>int</span> k=<span style='color:#b08000;'>0</span>;k<maxVertex;k++)
adjMat[j][k]=<span style='color:#b08000;'>0</span>;
theStack=<b>new</b> <b><span style='color:#0095ff;'>Stack</span></b>(s);
theQueue=<b>new</b> <b><span style='color:#0095ff;'>Queue</span></b>(s);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>addVertex</span>(<span style='color:#0057ae;'>char</span> lab)
{
<b>if</b>(nVert==maxVertex)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Vertex limit exceeded "</span>);
<b>else</b>
vertexList[nVert++]=<b>new</b> <span style='color:#644a9b;'>Vertex</span>(lab);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>addEdge</span>(<span style='color:#0057ae;'>char</span> start,<span style='color:#0057ae;'>char</span> end)
{
<span style='color:#0057ae;'>int</span> i,j;
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
<b>if</b>(vertexList[j].<span style='color:#644a9b;'>label</span>==start)
<b>break</b>;
<b>for</b>(i=<span style='color:#b08000;'>0</span>;i<nVert;i++)
<b>if</b>(vertexList[i].<span style='color:#644a9b;'>label</span>==end)
<b>break</b>;
<b>if</b>(i==nVert||j==nVert)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Vertex not found"</span>);
<b>else</b>
{
adjMat[j][i]=<span style='color:#b08000;'>1</span>;
adjMat[i][j]=<span style='color:#b08000;'>1</span>;
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayVertex</span>(<span style='color:#0057ae;'>int</span> v)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(vertexList[v].<span style='color:#644a9b;'>label</span>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>dfs</span>()
{
vertexList[<span style='color:#b08000;'>0</span>].<span style='color:#644a9b;'>wasVisited</span>=<b>true</b>;
<span style='color:#644a9b;'>displayVertex</span>(<span style='color:#b08000;'>0</span>);
theStack.<span style='color:#644a9b;'>push</span>(<span style='color:#b08000;'>0</span>);
<b>while</b>(!theStack.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>int</span> v=<span style='color:#644a9b;'>getAdjUnvisitedVertex</span>(theStack.<span style='color:#644a9b;'>peek</span>());
<b>if</b>(v==-<span style='color:#b08000;'>1</span>)
theStack.<span style='color:#644a9b;'>pop</span>();
<b>else</b>
{
vertexList[v].<span style='color:#644a9b;'>wasVisited</span>=<b>true</b>;
<span style='color:#644a9b;'>displayVertex</span>(v);
theStack.<span style='color:#644a9b;'>push</span>(v);
}
}
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
vertexList[j].<span style='color:#644a9b;'>wasVisited</span>=<b>false</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>bfs</span>()
{
vertexList[<span style='color:#b08000;'>0</span>].<span style='color:#644a9b;'>wasVisited</span>=<b>true</b>;
<span style='color:#644a9b;'>displayVertex</span>(<span style='color:#b08000;'>0</span>);
theQueue.<span style='color:#644a9b;'>insert</span>(<span style='color:#b08000;'>0</span>);
<span style='color:#0057ae;'>int</span> v2;
<b>while</b>(!theQueue.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>int</span> v1=theQueue.<span style='color:#644a9b;'>remove</span>();
<b>while</b>((v2=<span style='color:#644a9b;'>getAdjUnvisitedVertex</span>(v1))!=-<span style='color:#b08000;'>1</span>)
{
vertexList[v2].<span style='color:#644a9b;'>wasVisited</span>=<b>true</b>;
<span style='color:#644a9b;'>displayVertex</span>(v2);
theQueue.<span style='color:#644a9b;'>insert</span>(v2);
}
}
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
vertexList[j].<span style='color:#644a9b;'>wasVisited</span>=<b>false</b>;
}
<b>private</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>getAdjUnvisitedVertex</span>(<span style='color:#0057ae;'>int</span> v)
{
<b>for</b>(<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;j<nVert;j++)
<b>if</b>(adjMat[v][j]==<span style='color:#b08000;'>1</span>&&vertexList[j].<span style='color:#644a9b;'>wasVisited</span>==<b>false</b>)
<b>return</b> j;
<b>return</b> -<span style='color:#b08000;'>1</span>;
}
}
<b>class</b> GraphApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the limit of vertexes"</span>);
<span style='color:#0057ae;'>int</span> max=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
Graph g=<b>new</b> <span style='color:#644a9b;'>Graph</span>(max);
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Menu"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Add Vertex"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Add Edge"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.DFS"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"4.BFS"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
<span style='color:#0057ae;'>int</span> n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the vertex"</span>);
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
<span style='color:#0057ae;'>char</span> a=s.<span style='color:#644a9b;'>charAt</span>(<span style='color:#b08000;'>0</span>);
g.<span style='color:#644a9b;'>addVertex</span>(a);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue inserting"</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the edge"</span>);
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
g.<span style='color:#644a9b;'>addEdge</span>(s.<span style='color:#644a9b;'>charAt</span>(<span style='color:#b08000;'>0</span>),s.<span style='color:#644a9b;'>charAt</span>(<span style='color:#b08000;'>1</span>));
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue inserting"</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"DFS"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------------"</span>);
g.<span style='color:#644a9b;'>dfs</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>4</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"BFS"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------------"</span>);
g.<span style='color:#644a9b;'>bfs</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid Choice"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre><b>OUTPUT</b><br />
<b><br />
</b><br />
C:\Program Files\Java\jdk1.6.0_06\bin>java GraphApp <br />
Enter the limit of vertexes <br />
10 <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.DFS <br />
4.BFS <br />
Enter your choice <br />
1 <br />
Enter the vertex <br />
a <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
b <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
c <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
d <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
e <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
f <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
g <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
h <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
i <br />
Enter y to continue inserting <br />
<br />
Enter y to continue y <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.DFS <br />
4.BFS <br />
Enter your choice <br />
2 <br />
Enter the edge <br />
ab <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ac <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ad <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ae <br />
Enter y to continue inserting y <br />
Enter the edge <br />
bf <br />
Enter y to continue inserting y <br />
Enter the edge <br />
fh <br />
Enter y to continue inserting y <br />
Enter the edge <br />
dg <br />
Enter y to continue inserting y <br />
Enter the edge <br />
gi <br />
Enter y to continue inserting <br />
<br />
Enter y to continue y <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.DFS <br />
4.BFS <br />
Enter your choice <br />
3 <br />
DFS <br />
------------- <br />
abfhcdgie <br />
<br />
Enter y to continue y <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.DFS <br />
4.BFS <br />
Enter your choice <br />
4 <br />
BFS <br />
------------- <br />
abcdefghi <br />
<br />
Enter y to continue <br />
<br />
<br />
<br />
MST <br />
------------------ <br />
---------------- <br />
<br />
C:\Program Files\Java\jdk1.6.0_06\bin>jav <br />
Enter the limit of vertexes <br />
20 <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.MST <br />
Enter your choice <br />
1 <br />
Enter the vertex <br />
a <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
b <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
c <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
d <br />
Enter y to continue inserting y <br />
Enter the vertex <br />
e <br />
Enter y to continue inserting <br />
<br />
Enter y to continue y <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.MST <br />
Enter your choice <br />
2 <br />
Enter the edge <br />
ab <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ad <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ac <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ae <br />
Enter y to continue inserting y <br />
Enter the edge <br />
be <br />
Enter y to continue inserting y <br />
Enter the edge <br />
bd <br />
Enter y to continue inserting y <br />
Enter the edge <br />
bc <br />
Enter y to continue inserting y <br />
Enter the edge <br />
ce <br />
Enter y to continue inserting y <br />
Enter the edge <br />
cd <br />
Enter y to continue inserting y <br />
Enter the edge <br />
de <br />
Enter y to continue inserting y <br />
Enter the edge <br />
df <br />
Vertex not found <br />
Enter y to continue inserting <br />
<br />
Enter y to continue y <br />
Menu <br />
-------- <br />
1.Add Vertex <br />
2.Add Edge <br />
3.MST <br />
Enter your choice <br />
3 <br />
Minimum Spaning Tree <br />
------------- <br />
ab bc cd de <br />
<br />
Enter y to continueArun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com3tag:blogger.com,1999:blog-9138388471242794466.post-17550942182903905032010-03-14T01:43:00.000-08:002016-11-06T05:13:39.637-08:00Selection Sort , Quick Sort , Merge Sort , Heap Sort14.Write a program to implement <br />
1.Selection Sort <br />
2.Quick Sort <br />
3.Merge Sort <br />
4.Heap Sort <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Array</span></b>
{
<b>private</b> <span style='color:#0057ae;'>int</span>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> n;
<b><span style='color:#0095ff;'>DataInputStream</span></b> in=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b>public</b> <b><span style='color:#0095ff;'>Array</span></b>(<span style='color:#0057ae;'>int</span> max)
{
a=<b>new</b> <span style='color:#0057ae;'>int</span>[max];
n=max;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>()<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<n;i++)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter the "</span>+(i+<span style='color:#b08000;'>1</span>)+<span style='color:#bf0303;'>"th element "</span>);
a[i]=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>display</span>()
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<n;i++)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(a[i]+<span style='color:#bf0303;'>" "</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>selectionSort</span>()
{
<span style='color:#0057ae;'>int</span> out,in,min;
<b>for</b>(out=<span style='color:#b08000;'>0</span>;out<n;out++)
{
min=out;
<b>for</b>(in=out+<span style='color:#b08000;'>1</span>;in<n;in++)
<b>if</b>(a[in]<a[min])
min=in;
<span style='color:#644a9b;'>swap</span>(out,min);
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>quickSort</span>()
{
<span style='color:#644a9b;'>recQuickSort</span>(<span style='color:#b08000;'>0</span>,n-<span style='color:#b08000;'>1</span>);
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>recQuickSort</span>(<span style='color:#0057ae;'>int</span> left,<span style='color:#0057ae;'>int</span> right)
{
<b>if</b>(right-left<=<span style='color:#b08000;'>0</span>)
<b>return</b>;
<b>else</b>
{
<span style='color:#0057ae;'>int</span> pivot=a[right];
<span style='color:#0057ae;'>int</span> partition=<span style='color:#644a9b;'>partitionIt</span>(left,right,pivot);
<span style='color:#644a9b;'>recQuickSort</span>(left,partition-<span style='color:#b08000;'>1</span>);
<span style='color:#644a9b;'>recQuickSort</span>(partition+<span style='color:#b08000;'>1</span>,right);
}
}
<b>private</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>partitionIt</span>(<span style='color:#0057ae;'>int</span> left,<span style='color:#0057ae;'>int</span> right,<span style='color:#0057ae;'>int</span> pivot)
{
<span style='color:#0057ae;'>int</span> leftPtr=left-<span style='color:#b08000;'>1</span>;
<span style='color:#0057ae;'>int</span> rightPtr=right;
<b>while</b>(<b>true</b>)
{
<b>while</b>(a[++leftPtr]<pivot);
<b>while</b>(rightPtr><span style='color:#b08000;'>0</span>&&a[--rightPtr]>pivot);
<b>if</b>(leftPtr>=rightPtr)
<b>break</b>;
<b>else</b>
<span style='color:#644a9b;'>swap</span>(leftPtr,rightPtr);
}
<span style='color:#644a9b;'>swap</span>(leftPtr,right);
<b>return</b> leftPtr;
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>swap</span>(<span style='color:#0057ae;'>int</span> one,<span style='color:#0057ae;'>int</span> two)
{
<span style='color:#0057ae;'>int</span> t=a[one];
a[one]=a[two];
a[two]=t;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>mergeSort</span>()
{
<span style='color:#0057ae;'>int</span>[] workSpace=<b>new</b> <span style='color:#0057ae;'>int</span>[n];
<span style='color:#644a9b;'>recMergeSort</span>(workSpace,<span style='color:#b08000;'>0</span>,n-<span style='color:#b08000;'>1</span>);
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>recMergeSort</span>(<span style='color:#0057ae;'>int</span>[] workSpace,<span style='color:#0057ae;'>int</span> lBound,<span style='color:#0057ae;'>int</span> uBound)
{
<b>if</b>(lBound==uBound)
<b>return</b>;
<b>else</b>
{
<span style='color:#0057ae;'>int</span> mid=(lBound+uBound)/<span style='color:#b08000;'>2</span>;
<span style='color:#644a9b;'>recMergeSort</span>(workSpace,lBound,mid);
<span style='color:#644a9b;'>recMergeSort</span>(workSpace,mid+<span style='color:#b08000;'>1</span>,uBound);
<span style='color:#644a9b;'>merge</span>(workSpace,lBound,mid+<span style='color:#b08000;'>1</span>,uBound);
}
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>merge</span>(<span style='color:#0057ae;'>int</span>[] workSpace,<span style='color:#0057ae;'>int</span> lPtr,<span style='color:#0057ae;'>int</span> hPtr,<span style='color:#0057ae;'>int</span> uBound)
{
<span style='color:#0057ae;'>int</span> j=<span style='color:#b08000;'>0</span>;
<span style='color:#0057ae;'>int</span> lBound=lPtr;
<span style='color:#0057ae;'>int</span> mid=hPtr-<span style='color:#b08000;'>1</span>;
<span style='color:#0057ae;'>int</span> m=uBound-lBound+<span style='color:#b08000;'>1</span>;
<b>while</b>(lPtr<=mid&&hPtr<=uBound)
{
<b>if</b>(a[lPtr]<a[hPtr])
workSpace[j++]=a[lPtr++];
<b>else</b>
workSpace[j++]=a[hPtr++];
}
<b>while</b>(lPtr<=mid)
workSpace[j++]=a[lPtr++];
<b>while</b>(hPtr<=uBound)
workSpace[j++]=a[hPtr++];
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<m;j++)
a[lBound+j]=workSpace[j];
}
}
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> data;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> d)
{
data=d;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(data+<span style='color:#bf0303;'>" "</span>);
}
}
<b>class</b> Heap
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b>[] heapArray;
<b>private</b> <span style='color:#0057ae;'>int</span> max;
<b>private</b> <span style='color:#0057ae;'>int</span> curr;
<b>public</b> <span style='color:#644a9b;'>Heap</span>(<span style='color:#0057ae;'>int</span> m)
{
max=m;
curr=<span style='color:#b08000;'>0</span>;
heapArray=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>[max];
}
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> <span style='color:#644a9b;'>remove</span>()
{
<b><span style='color:#0095ff;'>Node</span></b> root=heapArray[<span style='color:#b08000;'>0</span>];
heapArray[<span style='color:#b08000;'>0</span>]=heapArray[--curr];
<span style='color:#644a9b;'>trickleDown</span>(<span style='color:#b08000;'>0</span>);
<b>return</b> root;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>trickleDown</span>(<span style='color:#0057ae;'>int</span> index)
{
<span style='color:#0057ae;'>int</span> larChild;
<b><span style='color:#0095ff;'>Node</span></b> top=heapArray[index];
<b>while</b>(index<curr/<span style='color:#b08000;'>2</span>)
{
<span style='color:#0057ae;'>int</span> lChild=<span style='color:#b08000;'>2</span>*index+<span style='color:#b08000;'>1</span>;
<span style='color:#0057ae;'>int</span> rChild=lChild+<span style='color:#b08000;'>1</span>;
<b>if</b>(rChild<curr&&heapArray[lChild].<span style='color:#644a9b;'>data</span><heapArray[rChild].<span style='color:#644a9b;'>data</span>)
larChild=rChild;
<b>else</b>
larChild=lChild;
<b>if</b>(top.<span style='color:#644a9b;'>data</span>>=heapArray[larChild].<span style='color:#644a9b;'>data</span>)
<b>break</b>;
heapArray[index]=heapArray[larChild];
index=larChild;
}
heapArray[index]=top;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertAt</span>(<span style='color:#0057ae;'>int</span> index,<b><span style='color:#0095ff;'>Node</span></b> newNode)
{
heapArray[index]=newNode;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayArray</span>()
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<max;i++)
heapArray[i].<span style='color:#644a9b;'>displayNode</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>incrementSize</span>()
{
curr++;
}
}
<b>class</b> SortApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b>[] args)<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<span style='color:#0057ae;'>int</span> n;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Menu"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Selection Sort"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Quick Sort"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.Merge Sort"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"4.Heap Sort"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
<span style='color:#0057ae;'>int</span> c=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(c)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the size of array"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>Array</span></b> a=<b>new</b> <b><span style='color:#0095ff;'>Array</span></b>(n);
a.<span style='color:#644a9b;'>insert</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array before Selection Sort"</span>);
a.<span style='color:#644a9b;'>display</span>();
a.<span style='color:#644a9b;'>selectionSort</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array after Selection Sort"</span>);
a.<span style='color:#644a9b;'>display</span>();
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the size of array"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>Array</span></b> a1=<b>new</b> <b><span style='color:#0095ff;'>Array</span></b>(n);
a1.<span style='color:#644a9b;'>insert</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array before Quick Sort"</span>);
a1.<span style='color:#644a9b;'>display</span>();
a1.<span style='color:#644a9b;'>quickSort</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array after Quick Sort"</span>);
a1.<span style='color:#644a9b;'>display</span>();
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the size of array"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>Array</span></b> a2=<b>new</b> <b><span style='color:#0095ff;'>Array</span></b>(n);
a2.<span style='color:#644a9b;'>insert</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array before Merge Sort"</span>);
a2.<span style='color:#644a9b;'>display</span>();
a2.<span style='color:#644a9b;'>mergeSort</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array after Merge Sort"</span>);
a2.<span style='color:#644a9b;'>display</span>();
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>4</span>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the size of array"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
Heap h=<b>new</b> <span style='color:#644a9b;'>Heap</span>(n);
<span style='color:#0057ae;'>int</span> j;
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<n;j++)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter the "</span>+(j+<span style='color:#b08000;'>1</span>)+<span style='color:#bf0303;'>"th element "</span>);
<span style='color:#0057ae;'>int</span> dat=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(dat);
h.<span style='color:#644a9b;'>insertAt</span>(j,newNode);
h.<span style='color:#644a9b;'>incrementSize</span>();
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array before Heap Sort"</span>);
h.<span style='color:#644a9b;'>displayArray</span>();
<b>for</b>(j=n/<span style='color:#b08000;'>2</span>-<span style='color:#b08000;'>1</span>;j>=<span style='color:#b08000;'>0</span>;j--)
h.<span style='color:#644a9b;'>trickleDown</span>(j);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Heap "</span>);
h.<span style='color:#644a9b;'>displayArray</span>();
<b>for</b>(j=n-<span style='color:#b08000;'>1</span>;j>=<span style='color:#b08000;'>0</span>;j--)
{
<b><span style='color:#0095ff;'>Node</span></b> biggestNode=h.<span style='color:#644a9b;'>remove</span>();
h.<span style='color:#644a9b;'>insertAt</span>(j,biggestNode);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array after Heap Sort"</span>);
h.<span style='color:#644a9b;'>displayArray</span>();
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid choice"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-33955041267567783242010-03-13T23:28:00.000-08:002016-11-06T05:16:29.918-08:00Implement a threaded binary tree13.Implement a threaded binary tree and perorm the inorder traveral of it. <br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> data;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> lChild;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> rChild;
<b>public</b> <span style='color:#0057ae;'>boolean</span> lTag;
<b>public</b> <span style='color:#0057ae;'>boolean</span> rTag;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> x)
{
data=x;
}
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>()
{
lTag=<b>true</b>;
rTag=<b>false</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(data+<span style='color:#bf0303;'>" "</span>);
}
}
<b>class</b> ThreadedTree
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> header;
<b>public</b> <span style='color:#644a9b;'>ThreadedTree</span>()
{
header=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>();
header.<span style='color:#644a9b;'>lChild</span>=header;
header.<span style='color:#644a9b;'>rChild</span>=header;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>(<span style='color:#0057ae;'>int</span> id)
{
<b><span style='color:#0095ff;'>Node</span></b> xPtr=<span style='color:#644a9b;'>getNode</span>(id);
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(id);
<b>if</b>(xPtr==header)
{
newNode.<span style='color:#644a9b;'>lChild</span>=header;
newNode.<span style='color:#644a9b;'>rChild</span>=header;
newNode.<span style='color:#644a9b;'>lTag</span>=<b>true</b>;
newNode.<span style='color:#644a9b;'>rTag</span>=<b>true</b>;
header.<span style='color:#644a9b;'>lTag</span>=<b>false</b>;
header.<span style='color:#644a9b;'>lChild</span>=newNode;
}
<b>else</b> <b>if</b>(id<xPtr.<span style='color:#644a9b;'>data</span>)
{
newNode.<span style='color:#644a9b;'>lChild</span>=xPtr.<span style='color:#644a9b;'>lChild</span>;
newNode.<span style='color:#644a9b;'>rChild</span>=xPtr;
newNode.<span style='color:#644a9b;'>lTag</span>=<b>true</b>;
newNode.<span style='color:#644a9b;'>rTag</span>=<b>true</b>;
xPtr.<span style='color:#644a9b;'>lTag</span>=<b>false</b>;
xPtr.<span style='color:#644a9b;'>lChild</span>=newNode;
}
<b>else</b>
{
newNode.<span style='color:#644a9b;'>rChild</span>=xPtr.<span style='color:#644a9b;'>rChild</span>;
newNode.<span style='color:#644a9b;'>lChild</span>=xPtr;
newNode.<span style='color:#644a9b;'>lTag</span>=<b>true</b>;
newNode.<span style='color:#644a9b;'>rTag</span>=<b>true</b>;
xPtr.<span style='color:#644a9b;'>rTag</span>=<b>false</b>;
xPtr.<span style='color:#644a9b;'>rChild</span>=newNode;
}
}
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> <span style='color:#644a9b;'>getNode</span>(<span style='color:#0057ae;'>int</span> id)
{
<b><span style='color:#0095ff;'>Node</span></b> ptr=header;
<b><span style='color:#0095ff;'>Node</span></b> parent=ptr;
ptr=<span style='color:#644a9b;'>insucc</span>(ptr);
<b>if</b>(ptr!=header)
{
<b>if</b>(id>=ptr.<span style='color:#644a9b;'>data</span>)
{
<b>while</b>(<b>true</b>)
{
parent=ptr;
ptr=<span style='color:#644a9b;'>insucc</span>(ptr);
<b>if</b>(ptr==header)
<b>break</b>;
<b>if</b>(id<ptr.<span style='color:#644a9b;'>data</span>)
{
<b>if</b>(parent.<span style='color:#644a9b;'>rTag</span>)
ptr=parent;
<b>break</b>;
}
}
}
}
<b>if</b>(ptr==header&&!header.<span style='color:#644a9b;'>lTag</span>)
<b>return</b> parent;
<b>return</b> ptr;
}
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> <span style='color:#644a9b;'>insucc</span>(<b><span style='color:#0095ff;'>Node</span></b> ptr)
{
<b><span style='color:#0095ff;'>Node</span></b> succ=ptr.<span style='color:#644a9b;'>rChild</span>;
<b>if</b>(ptr.<span style='color:#644a9b;'>rTag</span>==<b>false</b>)
{
<b>while</b>(succ.<span style='color:#644a9b;'>lTag</span>==<b>false</b>)
succ=succ.<span style='color:#644a9b;'>lChild</span>;
}
<b>return</b> succ;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>traverse</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Inorder Traversal:- "</span>);
<span style='color:#644a9b;'>inOrder</span>(header);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>inOrder</span>(<b><span style='color:#0095ff;'>Node</span></b> ptr)
{
<b>while</b>(<b>true</b>)
{
ptr=<span style='color:#644a9b;'>insucc</span>(ptr);
<b>if</b>(ptr==header)
<b>break</b>;
ptr.<span style='color:#644a9b;'>displayNode</span>();
}
}
}
<b>class</b> ThreadedApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
ThreadedTree t=<b>new</b> <span style='color:#644a9b;'>ThreadedTree</span>();
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Menu"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Insert"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Display"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
<span style='color:#0057ae;'>int</span> n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the data"</span>);
<span style='color:#0057ae;'>int</span> a=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
t.<span style='color:#644a9b;'>insert</span>(a);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue inserting"</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Tree Elements"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------------"</span>);
t.<span style='color:#644a9b;'>traverse</span>();
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid Choice"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-89365355564409161622010-02-27T09:40:00.000-08:002016-11-06T05:19:01.223-08:00Organize a list of student names and their ranks as a binary search tree12. A list of student names and their ranks are given. Organize this data as a binary search tree.<br />
Given rank no,display the student's name. Display the entire rank list in ascending order. <br />
<br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> rank;
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> name;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> leftChild;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> rightChild;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> x,<b><span style='color:#0095ff;'>String</span></b> n)
{
rank=x;
name=n;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(rank+<span style='color:#bf0303;'>" "</span>+name+<span style='color:#924c9d;'>'\n'</span>);
}
}
<b>class</b> BinarySearchTree
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> root;
<b>public</b> <span style='color:#644a9b;'>BinarySearchTree</span>()
{
root=<b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>(<span style='color:#0057ae;'>int</span> id,<b><span style='color:#0095ff;'>String</span></b> s)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(id,s);
<b>if</b>(root==<b>null</b>)
root=newNode;
<b>else</b>
{
<b><span style='color:#0095ff;'>Node</span></b> current=root;
<b><span style='color:#0095ff;'>Node</span></b> parent;
<b>while</b>(<b>true</b>)
{
parent=current;
<b>if</b>(id<current.<span style='color:#644a9b;'>rank</span>)
{
current=current.<span style='color:#644a9b;'>leftChild</span>;
<b>if</b>(current==<b>null</b>)
{
parent.<span style='color:#644a9b;'>leftChild</span>=newNode;
<b>return</b>;
}
}
<b>else</b> <b>if</b>(id>current.<span style='color:#644a9b;'>rank</span>)
{
current=current.<span style='color:#644a9b;'>rightChild</span>;
<b>if</b>(current==<b>null</b>)
{
parent.<span style='color:#644a9b;'>rightChild</span>=newNode;
<b>return</b>;
}
}
<b>else</b>
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid Entry"</span>);
}
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>traverse</span>()
{
<span style='color:#644a9b;'>inOrder</span>(root);
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>inOrder</span>(<b><span style='color:#0095ff;'>Node</span></b> localRoot)
{
<b>if</b>(localRoot!=<b>null</b>)
{
<span style='color:#644a9b;'>inOrder</span>(localRoot.<span style='color:#644a9b;'>leftChild</span>);
localRoot.<span style='color:#644a9b;'>displayNode</span>();
<span style='color:#644a9b;'>inOrder</span>(localRoot.<span style='color:#644a9b;'>rightChild</span>);
}
}
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> <span style='color:#644a9b;'>find</span>(<span style='color:#0057ae;'>int</span> key)
{
<b><span style='color:#0095ff;'>Node</span></b> current=root;
<b>if</b>(current==<b>null</b>)
<b>return</b> <b>null</b>;
<b>else</b>
{
<b>while</b>(current.<span style='color:#644a9b;'>rank</span>!=key)
{
<b>if</b>(key<current.<span style='color:#644a9b;'>rank</span>)
current=current.<span style='color:#644a9b;'>leftChild</span>;
<b>else</b>
current=current.<span style='color:#644a9b;'>rightChild</span>;
<b>if</b>(current==<b>null</b>)
<b>return</b> <b>null</b>;
}
<b>return</b> current;
}
}
}
<b>class</b> RankTreeApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
BinarySearchTree t=<b>new</b> <span style='color:#644a9b;'>BinarySearchTree</span>();
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Menu"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Insert"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Find"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.Display"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
<span style='color:#0057ae;'>int</span> n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the rank and name"</span>);
<span style='color:#0057ae;'>int</span> a=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
t.<span style='color:#644a9b;'>insert</span>(a,s);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue inserting"</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the rank "</span>);
<span style='color:#0057ae;'>int</span> b=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>Node</span></b> found=t.<span style='color:#644a9b;'>find</span>(b);
<b>if</b>(found!=<b>null</b>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Found "</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"RANK NAME"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"----------------"</span>);
found.<span style='color:#644a9b;'>displayNode</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
}
<b>else</b>
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Not Found"</span>);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"RANK LIST"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"RANK NAME"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"----------------"</span>);
t.<span style='color:#644a9b;'>traverse</span>();
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid Choice"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-84632152535831133782010-02-27T09:37:00.000-08:002016-11-06T05:21:43.544-08:00Construct a Expression tree.11.Construct a Expression tree. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>char</span> data;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> leftChild;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> rightChild;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>char</span> x)
{
data=x;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(data);
}
}
<b>class</b> Stack1
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> top,m;
<b>public</b> <span style='color:#644a9b;'>Stack1</span>(<span style='color:#0057ae;'>int</span> max)
{
m=max;
a=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>[m];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<b><span style='color:#0095ff;'>Node</span></b> key)
{
a[++top]=key;
}
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(a[top--]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b> (top==-<span style='color:#b08000;'>1</span>);
}
}
<b>class</b> Stack2
{
<b>private</b> <span style='color:#0057ae;'>char</span>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> top,m;
<b>public</b> <span style='color:#644a9b;'>Stack2</span>(<span style='color:#0057ae;'>int</span> max)
{
m=max;
a=<b>new</b> <span style='color:#0057ae;'>char</span>[m];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<span style='color:#0057ae;'>char</span> key)
{
a[++top]=key;
}
<b>public</b> <span style='color:#0057ae;'>char</span> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(a[top--]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b> (top==-<span style='color:#b08000;'>1</span>);
}
}
<b>class</b> Conversion
{
<b>private</b> Stack2 s;
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> input;
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> output=<span style='color:#bf0303;'>""</span>;
<b>public</b> <span style='color:#644a9b;'>Conversion</span>(<b><span style='color:#0095ff;'>String</span></b> str)
{
input=str;
s=<b>new</b> <span style='color:#644a9b;'>Stack2</span>(str.<span style='color:#644a9b;'>length</span>());
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>inToPost</span>()
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<input.<span style='color:#644a9b;'>length</span>();i++)
{
<span style='color:#0057ae;'>char</span> ch=input.<span style='color:#644a9b;'>charAt</span>(i);
<b>switch</b>(ch)
{
<b>case</b> <span style='color:#924c9d;'>'+'</span>:
<b>case</b> <span style='color:#924c9d;'>'-'</span>:<span style='color:#644a9b;'>gotOperator</span>(ch,<span style='color:#b08000;'>1</span>);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'*'</span>:
<b>case</b> <span style='color:#924c9d;'>'/'</span>:<span style='color:#644a9b;'>gotOperator</span>(ch,<span style='color:#b08000;'>2</span>);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'('</span>:s.<span style='color:#644a9b;'>push</span>(ch);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>')'</span>:<span style='color:#644a9b;'>gotParenthesis</span>();
<b>break</b>;
<b>default</b>:output=output+ch;
}
}
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
output=output+s.<span style='color:#644a9b;'>pop</span>();
<b>return</b> output;
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>gotOperator</span>(<span style='color:#0057ae;'>char</span> opThis,<span style='color:#0057ae;'>int</span> prec1)
{
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>char</span> opTop=s.<span style='color:#644a9b;'>pop</span>();
<b>if</b>(opTop==<span style='color:#924c9d;'>'('</span>)
{
s.<span style='color:#644a9b;'>push</span>(opTop);
<b>break</b>;
}
<b>else</b>
{
<span style='color:#0057ae;'>int</span> prec2;
<b>if</b>(opTop==<span style='color:#924c9d;'>'+'</span>||opTop==<span style='color:#924c9d;'>'-'</span>)
prec2=<span style='color:#b08000;'>1</span>;
<b>else</b>
prec2=<span style='color:#b08000;'>2</span>;
<b>if</b>(prec2<prec1)
{
s.<span style='color:#644a9b;'>push</span>(opTop);
<b>break</b>;
}
<b>else</b>
output=output+opTop;
}
}
s.<span style='color:#644a9b;'>push</span>(opThis);
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>gotParenthesis</span>()
{
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>char</span> ch=s.<span style='color:#644a9b;'>pop</span>();
<b>if</b>(ch==<span style='color:#924c9d;'>'('</span>)
<b>break</b>;
<b>else</b>
output=output+ch;
}
}
}
<b>class</b> Tree
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> root;
<b>public</b> <span style='color:#644a9b;'>Tree</span>()
{
root=<b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>(<b><span style='color:#0095ff;'>String</span></b> s)
{
Conversion c=<b>new</b> <span style='color:#644a9b;'>Conversion</span>(s);
s=c.<span style='color:#644a9b;'>inToPost</span>();
Stack1 stk=<b>new</b> <span style='color:#644a9b;'>Stack1</span>(s.<span style='color:#644a9b;'>length</span>());
s=s+<span style='color:#bf0303;'>"#"</span>;
<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;
<span style='color:#0057ae;'>char</span> symbol=s.<span style='color:#644a9b;'>charAt</span>(i);
<b><span style='color:#0095ff;'>Node</span></b> newNode;
<b>while</b>(symbol!=<span style='color:#924c9d;'>'#'</span>)
{
<b>if</b>(symbol>=<span style='color:#924c9d;'>'0'</span>&&symbol<=<span style='color:#924c9d;'>'9'</span>||symbol>=<span style='color:#924c9d;'>'A'</span>&&symbol<=<span style='color:#924c9d;'>'Z'</span>||symbol>=<span style='color:#924c9d;'>'a'</span>&&symbol<=<span style='color:#924c9d;'>'z'</span>)
{
newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(symbol);
stk.<span style='color:#644a9b;'>push</span>(newNode);
}
<b>else</b> <b>if</b>(symbol==<span style='color:#924c9d;'>'+'</span>||symbol==<span style='color:#924c9d;'>'-'</span>||symbol==<span style='color:#924c9d;'>'/'</span>||symbol==<span style='color:#924c9d;'>'*'</span>)
{
<b><span style='color:#0095ff;'>Node</span></b> ptr1=stk.<span style='color:#644a9b;'>pop</span>();
<b><span style='color:#0095ff;'>Node</span></b> ptr2=stk.<span style='color:#644a9b;'>pop</span>();
newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(symbol);
newNode.<span style='color:#644a9b;'>leftChild</span>=ptr2;
newNode.<span style='color:#644a9b;'>rightChild</span>=ptr1;
stk.<span style='color:#644a9b;'>push</span>(newNode);
}
symbol=s.<span style='color:#644a9b;'>charAt</span>(++i);
}
root=stk.<span style='color:#644a9b;'>pop</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>traverse</span>(<span style='color:#0057ae;'>int</span> type)
{
<b>switch</b>(type)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Preorder Traversal:- "</span>);
<span style='color:#644a9b;'>preOrder</span>(root);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Inorder Traversal:- "</span>);
<span style='color:#644a9b;'>inOrder</span>(root);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Postorder Traversal:- "</span>);
<span style='color:#644a9b;'>postOrder</span>(root);
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid Choice"</span>);
}
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>preOrder</span>(<b><span style='color:#0095ff;'>Node</span></b> localRoot)
{
<b>if</b>(localRoot!=<b>null</b>)
{
localRoot.<span style='color:#644a9b;'>displayNode</span>();
<span style='color:#644a9b;'>preOrder</span>(localRoot.<span style='color:#644a9b;'>leftChild</span>);
<span style='color:#644a9b;'>preOrder</span>(localRoot.<span style='color:#644a9b;'>rightChild</span>);
}
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>inOrder</span>(<b><span style='color:#0095ff;'>Node</span></b> localRoot)
{
<b>if</b>(localRoot!=<b>null</b>)
{
<span style='color:#644a9b;'>inOrder</span>(localRoot.<span style='color:#644a9b;'>leftChild</span>);
localRoot.<span style='color:#644a9b;'>displayNode</span>();
<span style='color:#644a9b;'>inOrder</span>(localRoot.<span style='color:#644a9b;'>rightChild</span>);
}
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>postOrder</span>(<b><span style='color:#0095ff;'>Node</span></b> localRoot)
{
<b>if</b>(localRoot!=<b>null</b>)
{
<span style='color:#644a9b;'>postOrder</span>(localRoot.<span style='color:#644a9b;'>leftChild</span>);
<span style='color:#644a9b;'>postOrder</span>(localRoot.<span style='color:#644a9b;'>rightChild</span>);
localRoot.<span style='color:#644a9b;'>displayNode</span>();
}
}
}
<b>class</b> ExpressionTreeApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
Tree t1=<b>new</b> <span style='color:#644a9b;'>Tree</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the Expression"</span>);
<b><span style='color:#0095ff;'>String</span></b> a=inp.<span style='color:#644a9b;'>readLine</span>();
t1.<span style='color:#644a9b;'>insert</span>(a);
t1.<span style='color:#644a9b;'>traverse</span>(<span style='color:#b08000;'>1</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
t1.<span style='color:#644a9b;'>traverse</span>(<span style='color:#b08000;'>2</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
t1.<span style='color:#644a9b;'>traverse</span>(<span style='color:#b08000;'>3</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-60915713055475004512010-02-16T08:49:00.000-08:002016-11-06T05:23:37.791-08:00Java program to implement deque using double linked list.10. Write a program to implement deque using double linked list. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> data;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> next;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> previous;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> x)
{
data=x;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(data+<span style='color:#bf0303;'>" "</span>);
}
}
<b>class</b> DoublyLinkList
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> first;
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> last;
<b>public</b> <span style='color:#644a9b;'>DoublyLinkList</span>()
{
first=<b>null</b>;
last=<b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertFirst</span>(<span style='color:#0057ae;'>int</span> x)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x);
newNode.<span style='color:#644a9b;'>next</span>=<b>null</b>;
<b>if</b>(<span style='color:#644a9b;'>isEmpty</span>())
last=newNode;
<b>else</b>
first.<span style='color:#644a9b;'>previous</span>=newNode;
newNode.<span style='color:#644a9b;'>next</span>=first;
first=newNode;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertLast</span>(<span style='color:#0057ae;'>int</span> x)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x);
newNode.<span style='color:#644a9b;'>next</span>=<b>null</b>;
<b>if</b>(<span style='color:#644a9b;'>isEmpty</span>())
first=newNode;
<b>else</b>
{
last.<span style='color:#644a9b;'>next</span>=newNode;
newNode.<span style='color:#644a9b;'>previous</span>=last;
}
last=newNode;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>deleteFirst</span>()
{
<span style='color:#0057ae;'>int</span> t=first.<span style='color:#644a9b;'>data</span>;
<b>if</b>(first.<span style='color:#644a9b;'>next</span>==<b>null</b>)
last=<b>null</b>;
<b>else</b>
first.<span style='color:#644a9b;'>next</span>.<span style='color:#644a9b;'>previous</span>=<b>null</b>;
first=first.<span style='color:#644a9b;'>next</span>;
<b>return</b> t;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>deleteLast</span>()
{
<span style='color:#0057ae;'>int</span> t=last.<span style='color:#644a9b;'>data</span>;
<b>if</b>(first.<span style='color:#644a9b;'>next</span>==<b>null</b>)
first=<b>null</b>;
<b>else</b>
last.<span style='color:#644a9b;'>previous</span>.<span style='color:#644a9b;'>next</span>=<b>null</b>;
last=last.<span style='color:#644a9b;'>previous</span>;
<b>return</b> t;
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b>(first==<b>null</b>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayForward</span>()
{
<b><span style='color:#0095ff;'>Node</span></b> current=first;
<b>while</b>(current!=<b>null</b>)
{
current.<span style='color:#644a9b;'>displayNode</span>();
current=current.<span style='color:#644a9b;'>next</span>;
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayBackward</span>()
{
<b><span style='color:#0095ff;'>Node</span></b> current=last;
<b>while</b>(current!=<b>null</b>)
{
current.<span style='color:#644a9b;'>displayNode</span>();
current=current.<span style='color:#644a9b;'>previous</span>;
}
}
}
<b>class</b> <b><span style='color:#0095ff;'>Deque</span></b>
{
<b>private</b> DoublyLinkList l;
<b>public</b> <b><span style='color:#0095ff;'>Deque</span></b>()
{
l=<b>new</b> <span style='color:#644a9b;'>DoublyLinkList</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertLeft</span>(<span style='color:#0057ae;'>int</span> x)
{
l.<span style='color:#644a9b;'>insertFirst</span>(x);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Inserted to Front "</span>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertRight</span>(<span style='color:#0057ae;'>int</span> x)
{
l.<span style='color:#644a9b;'>insertLast</span>(x);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Inserted to Rear "</span>);
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>deleteLeft</span>()
{
<b>return</b> l.<span style='color:#644a9b;'>deleteFirst</span>();
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>deleteRight</span>()
{
<b>return</b> l.<span style='color:#644a9b;'>deleteLast</span>();
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isQueueEmpty</span>()
{
<b>return</b> l.<span style='color:#644a9b;'>isEmpty</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayFromFront</span>()
{
l.<span style='color:#644a9b;'>displayForward</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayFromRear</span>()
{
l.<span style='color:#644a9b;'>displayBackward</span>();
}
}
<b>class</b> DequeApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<span style='color:#0057ae;'>int</span> n,d;
<b><span style='color:#0095ff;'>Deque</span></b> q=<b>new</b> <b><span style='color:#0095ff;'>Deque</span></b>();
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"MENU"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Insert at Front"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Insert at Rear"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.Delete at Front"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"4.Delete at Rear"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"5.Display From Front"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"6.Display From Rear"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the data "</span>);
d=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
q.<span style='color:#644a9b;'>insertLeft</span>(d);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the data "</span>);
d=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
q.<span style='color:#644a9b;'>insertRight</span>(d);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deque is Empty "</span>);
<b>else</b>
{
d=q.<span style='color:#644a9b;'>deleteLeft</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deleted data:- "</span>+d);
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>4</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deque is Empty "</span>);
<b>else</b>
{
d=q.<span style='color:#644a9b;'>deleteRight</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deleted data:- "</span>+d);
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>5</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deque is Empty "</span>);
<b>else</b>
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Datas in Deque From Front:- "</span>);
q.<span style='color:#644a9b;'>displayFromFront</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>6</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deque is Empty "</span>);
<b>else</b>
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Datas in Deque From Rear:- "</span>);
q.<span style='color:#644a9b;'>displayFromRear</span>();
}
<b>break</b>;
<b>default</b>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Invalid choice "</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com1tag:blogger.com,1999:blog-9138388471242794466.post-11971646030610758252010-02-08T08:46:00.000-08:002016-11-06T05:26:42.903-08:00Implement all the queue operations using a linked list.9. Implement all the queue operations using a linked list. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> data;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> next;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> x)
{
data=x;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayNode</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(data+<span style='color:#bf0303;'>" "</span>);
}
}
<b>class</b> LinkList
{
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> first;
<b>private</b> <b><span style='color:#0095ff;'>Node</span></b> last;
<b>public</b> <span style='color:#644a9b;'>LinkList</span>()
{
first=<b>null</b>;
last=<b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertLast</span>(<span style='color:#0057ae;'>int</span> x)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x);
newNode.<span style='color:#644a9b;'>next</span>=<b>null</b>;
<b>if</b>(<span style='color:#644a9b;'>isEmpty</span>())
first=newNode;
<b>else</b>
last.<span style='color:#644a9b;'>next</span>=newNode;
last=newNode;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>deleteFirst</span>()
{
<span style='color:#0057ae;'>int</span> t=first.<span style='color:#644a9b;'>data</span>;
<b>if</b>(first.<span style='color:#644a9b;'>next</span>==<b>null</b>)
last=<b>null</b>;
first=first.<span style='color:#644a9b;'>next</span>;
<b>return</b> t;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>peekFirst</span>()
{
<b>return</b>(first.<span style='color:#644a9b;'>data</span>);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b>(first==<b>null</b>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayList</span>()
{
<b><span style='color:#0095ff;'>Node</span></b> current=first;
<b>while</b>(current!=<b>null</b>)
{
current.<span style='color:#644a9b;'>displayNode</span>();
current=current.<span style='color:#644a9b;'>next</span>;
}
}
}
<b>class</b> <b><span style='color:#0095ff;'>Queue</span></b>
{
<b>private</b> LinkList l;
<b>public</b> <b><span style='color:#0095ff;'>Queue</span></b>()
{
l=<b>new</b> <span style='color:#644a9b;'>LinkList</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insert</span>(<span style='color:#0057ae;'>int</span> x)
{
l.<span style='color:#644a9b;'>insertLast</span>(x);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Inserted"</span>);
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>delete</span>()
{
<b>return</b> l.<span style='color:#644a9b;'>deleteFirst</span>();
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isQueueEmpty</span>()
{
<b>return</b> l.<span style='color:#644a9b;'>isEmpty</span>();
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>display</span>()
{
l.<span style='color:#644a9b;'>displayList</span>();
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>peek</span>()
{
<b>return</b> l.<span style='color:#644a9b;'>peekFirst</span>();
}
}
<b>class</b> QueueApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<span style='color:#0057ae;'>int</span> n,d;
<b><span style='color:#0095ff;'>Queue</span></b> q=<b>new</b> <b><span style='color:#0095ff;'>Queue</span></b>();
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"MENU"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Insert"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Delete"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.Peek"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"4.Display"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice "</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the data "</span>);
d=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
q.<span style='color:#644a9b;'>insert</span>(d);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Queue is Empty "</span>);
<b>else</b>
{
d=q.<span style='color:#644a9b;'>delete</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deleted data:- "</span>+d);
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Queue is Empty "</span>);
<b>else</b>
{
d=q.<span style='color:#644a9b;'>peek</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Deleted data:- "</span>+d);
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>4</span>: <b>if</b>(q.<span style='color:#644a9b;'>isQueueEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Queue is Empty "</span>);
<b>else</b>
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Datas in Queue "</span>);
q.<span style='color:#644a9b;'>display</span>();
}
<b>break</b>;
<b>default</b>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Invalid choice "</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com1tag:blogger.com,1999:blog-9138388471242794466.post-38115922745217755742010-02-08T08:41:00.000-08:002016-11-06T05:32:08.587-08:00Java program to perform Polynomial addition using linked list.8. Write a program to perform a polynomial addition using linked list. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Node</span></b>
{
<b>public</b> <span style='color:#0057ae;'>int</span> exp,coeff;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> next;
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
coeff=x;
exp=y;
}
}
<b>class</b> LinkList
{
<b>public</b> <b><span style='color:#0095ff;'>Node</span></b> first;
<b>public</b> <span style='color:#644a9b;'>LinkList</span>()
{
first=<b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertFirst</span>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x,y);
newNode.<span style='color:#644a9b;'>next</span>=first;
first=newNode;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertPos</span>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y,<span style='color:#0057ae;'>int</span> p)
{
<b><span style='color:#0095ff;'>Node</span></b> current=first;
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x,y);
<b>for</b>(<span style='color:#0057ae;'>int</span> i=p;i><span style='color:#b08000;'>1</span>;i--)
current=current.<span style='color:#644a9b;'>next</span>;
newNode.<span style='color:#644a9b;'>next</span>=current.<span style='color:#644a9b;'>next</span>;
current.<span style='color:#644a9b;'>next</span>=newNode;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>insertLast</span>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
<b><span style='color:#0095ff;'>Node</span></b> newNode=<b>new</b> <b><span style='color:#0095ff;'>Node</span></b>(x,y);
newNode.<span style='color:#644a9b;'>next</span>=<b>null</b>;
<b>if</b>(<span style='color:#644a9b;'>isEmpty</span>())
first=newNode;
<b>else</b>
{
<b><span style='color:#0095ff;'>Node</span></b> current=first;
<b>while</b>(current.<span style='color:#644a9b;'>next</span>!=<b>null</b>)
current=current.<span style='color:#644a9b;'>next</span>;
newNode.<span style='color:#644a9b;'>next</span>=current.<span style='color:#644a9b;'>next</span>;
current.<span style='color:#644a9b;'>next</span>=newNode;
}
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>find</span>(<span style='color:#0057ae;'>int</span> key)
{
<b><span style='color:#0095ff;'>Node</span></b> current=first;
<b>while</b>(current!=<b>null</b>)
{
<b>if</b>(current.<span style='color:#644a9b;'>exp</span>==key)
<b>return</b> <b>true</b>;
current=current.<span style='color:#644a9b;'>next</span>;
}
<b>return</b> <b>false</b>;
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b>(first==<b>null</b>);
}
}
<b>class</b> Polynomial
{
<b>private</b> LinkList l1;
<b>public</b> <span style='color:#644a9b;'>Polynomial</span>()
{
l1=<b>new</b> <span style='color:#644a9b;'>LinkList</span>();
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>insert</span>(<span style='color:#0057ae;'>int</span> x,<span style='color:#0057ae;'>int</span> y)
{
<b><span style='color:#0095ff;'>Node</span></b> current=l1.<span style='color:#644a9b;'>first</span>;
<span style='color:#0057ae;'>int</span> pos=<span style='color:#b08000;'>0</span>;
<b>while</b>(current!=<b>null</b>)
{
<b>if</b>(current.<span style='color:#644a9b;'>exp</span>==y)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Not a valid term. Insert again"</span>);
<b>return</b> <b>false</b>;
}
<b>else</b> <b>if</b>(current.<span style='color:#644a9b;'>exp</span><y)
<b>break</b>;
pos++;
current=current.<span style='color:#644a9b;'>next</span>;
}
<b>if</b>(pos==<span style='color:#b08000;'>0</span>)
l1.<span style='color:#644a9b;'>insertFirst</span>(x,y);
<b>else</b>
l1.<span style='color:#644a9b;'>insertPos</span>(x,y,pos);
<b>return</b> <b>true</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayPoly</span>()
{
<span style='color:#0057ae;'>int</span> f=<span style='color:#b08000;'>0</span>;
<b><span style='color:#0095ff;'>Node</span></b> current=l1.<span style='color:#644a9b;'>first</span>;
<b>while</b>(current!=<b>null</b>)
{
<b>if</b>(f!=<span style='color:#b08000;'>0</span>&&current.<span style='color:#644a9b;'>coeff</span>><span style='color:#b08000;'>0</span>&&current.<span style='color:#644a9b;'>coeff</span>!=-<span style='color:#b08000;'>1</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"+"</span>);
<b>if</b>(current.<span style='color:#644a9b;'>coeff</span>!=<span style='color:#b08000;'>0</span>)
{
<b>if</b>(current.<span style='color:#644a9b;'>coeff</span>><span style='color:#b08000;'>1</span>||current.<span style='color:#644a9b;'>coeff</span><-<span style='color:#b08000;'>1</span>||current.<span style='color:#644a9b;'>exp</span>==<span style='color:#b08000;'>0</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(current.<span style='color:#644a9b;'>coeff</span>);
<b>else</b> <b>if</b>(current.<span style='color:#644a9b;'>coeff</span>==-<span style='color:#b08000;'>1</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"-"</span>);
<b>if</b>(current.<span style='color:#644a9b;'>exp</span>==<span style='color:#b08000;'>1</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"X"</span>);
<b>else</b> <b>if</b>(current.<span style='color:#644a9b;'>exp</span>><span style='color:#b08000;'>1</span>||current.<span style='color:#644a9b;'>exp</span><<span style='color:#b08000;'>0</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"X^"</span>+current.<span style='color:#644a9b;'>exp</span>);
f=<span style='color:#b08000;'>1</span>;
}
current=current.<span style='color:#644a9b;'>next</span>;
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>add</span>(Polynomial poly1,Polynomial poly2)
{
<span style='color:#0057ae;'>int</span> x,y;
<b><span style='color:#0095ff;'>Node</span></b> current1=poly1.<span style='color:#644a9b;'>l1</span>.<span style='color:#644a9b;'>first</span>;
<b><span style='color:#0095ff;'>Node</span></b> current2=poly2.<span style='color:#644a9b;'>l1</span>.<span style='color:#644a9b;'>first</span>;
<b>while</b>(current1!=<b>null</b>&&current2!=<b>null</b>)
{
<b>if</b>(current1.<span style='color:#644a9b;'>exp</span>==current2.<span style='color:#644a9b;'>exp</span>)
{
x=current1.<span style='color:#644a9b;'>coeff</span>+current2.<span style='color:#644a9b;'>coeff</span>;
y=current1.<span style='color:#644a9b;'>exp</span>;
current1=current1.<span style='color:#644a9b;'>next</span>;
current2=current2.<span style='color:#644a9b;'>next</span>;
}
<b>else</b> <b>if</b>(current1.<span style='color:#644a9b;'>exp</span>>current2.<span style='color:#644a9b;'>exp</span>)
{
x=current1.<span style='color:#644a9b;'>coeff</span>;
y=current1.<span style='color:#644a9b;'>exp</span>;
current1=current1.<span style='color:#644a9b;'>next</span>;
}
<b>else</b>
{
x=current2.<span style='color:#644a9b;'>coeff</span>;
y=current2.<span style='color:#644a9b;'>exp</span>;
current2=current2.<span style='color:#644a9b;'>next</span>;
}
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
<b>while</b>(current1!=<b>null</b>)
{
x=current1.<span style='color:#644a9b;'>coeff</span>;
y=current1.<span style='color:#644a9b;'>exp</span>;
current1=current1.<span style='color:#644a9b;'>next</span>;
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
<b>while</b>(current2!=<b>null</b>)
{
x=current2.<span style='color:#644a9b;'>coeff</span>;
y=current2.<span style='color:#644a9b;'>exp</span>;
current2=current2.<span style='color:#644a9b;'>next</span>;
l1.<span style='color:#644a9b;'>insertLast</span>(x,y);
}
}
}
<b>class</b> PolynomialAdd
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> ch=<span style='color:#bf0303;'>"y"</span>;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<span style='color:#0057ae;'>int</span> n,co,ex;
<b>while</b>(ch.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
Polynomial p1=<b>new</b> <span style='color:#644a9b;'>Polynomial</span>();
Polynomial p2=<b>new</b> <span style='color:#644a9b;'>Polynomial</span>();
Polynomial p3=<b>new</b> <span style='color:#644a9b;'>Polynomial</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the no: of terms of 1st polynomial"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>while</b>(n!=<span style='color:#b08000;'>0</span>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the coefficent "</span>);
co=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the exponent"</span>);
ex=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>if</b>(p1.<span style='color:#644a9b;'>insert</span>(co,ex))
n--;
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the no: of terms of 2nd polynomial"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>while</b>(n!=<span style='color:#b08000;'>0</span>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the coefficent "</span>);
co=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the exponent"</span>);
ex=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>if</b>(p2.<span style='color:#644a9b;'>insert</span>(co,ex))
n--;
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"1st Polynomial:- "</span>);
p1.<span style='color:#644a9b;'>displayPoly</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"2nd Polynomial:- "</span>);
p2.<span style='color:#644a9b;'>displayPoly</span>();
p3.<span style='color:#644a9b;'>add</span>(p1,p2);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Added Polynomial:- "</span>);
p3.<span style='color:#644a9b;'>displayPoly</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>"Enter y to continue "</span>);
ch=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-73682043351926156592010-02-02T05:07:00.000-08:002016-11-06T05:34:10.754-08:00infix to prefix, infix to postfix, prefix to postfix7. Write a program to convert an expression using stack <br />
1.infix to prefix <br />
2.infix to postfix <br />
3.prefix to postfix <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Stack</span></b>
{
<b>private</b> <span style='color:#0057ae;'>char</span>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> top,m;
<b>public</b> <b><span style='color:#0095ff;'>Stack</span></b>(<span style='color:#0057ae;'>int</span> max)
{
m=max;
a=<b>new</b> <span style='color:#0057ae;'>char</span>[m];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<span style='color:#0057ae;'>char</span> key)
{
a[++top]=key;
}
<b>public</b> <span style='color:#0057ae;'>char</span> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(a[top--]);
}
<b>public</b> <span style='color:#0057ae;'>char</span> <span style='color:#644a9b;'>peek</span>()
{
<b>return</b>(a[top]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b> (top==-<span style='color:#b08000;'>1</span>);
}
}
<b>class</b> Evaluation
{
<b>private</b> <b><span style='color:#0095ff;'>Stack</span></b> s;
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> input;
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> output=<span style='color:#bf0303;'>""</span>;
<b>public</b> <span style='color:#644a9b;'>Evaluation</span>(<b><span style='color:#0095ff;'>String</span></b> str)
{
input=str;
s=<b>new</b> <b><span style='color:#0095ff;'>Stack</span></b>(str.<span style='color:#644a9b;'>length</span>());
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>inToPre</span>()
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=input.<span style='color:#644a9b;'>length</span>()-<span style='color:#b08000;'>1</span>;i>=<span style='color:#b08000;'>0</span>;i--)
{
<span style='color:#0057ae;'>char</span> ch=input.<span style='color:#644a9b;'>charAt</span>(i);
<b>switch</b>(ch)
{
<b>case</b> <span style='color:#924c9d;'>'+'</span>:
<b>case</b> <span style='color:#924c9d;'>'-'</span>:<span style='color:#644a9b;'>gotOperator</span>(ch,<span style='color:#b08000;'>1</span>,<span style='color:#924c9d;'>')'</span>);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'*'</span>:
<b>case</b> <span style='color:#924c9d;'>'/'</span>:<span style='color:#644a9b;'>gotOperator</span>(ch,<span style='color:#b08000;'>2</span>,<span style='color:#924c9d;'>')'</span>);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>')'</span>:s.<span style='color:#644a9b;'>push</span>(ch);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'('</span>:<span style='color:#644a9b;'>gotParenthesis</span>(<span style='color:#924c9d;'>')'</span>);
<b>break</b>;
<b>default</b>:output=ch+output;
}
}
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
output=s.<span style='color:#644a9b;'>pop</span>()+output;
<b>return</b> output;
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>inToPost</span>()
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<input.<span style='color:#644a9b;'>length</span>();i++)
{
<span style='color:#0057ae;'>char</span> ch=input.<span style='color:#644a9b;'>charAt</span>(i);
<b>switch</b>(ch)
{
<b>case</b> <span style='color:#924c9d;'>'+'</span>:
<b>case</b> <span style='color:#924c9d;'>'-'</span>:<span style='color:#644a9b;'>gotOperator</span>(ch,<span style='color:#b08000;'>1</span>,<span style='color:#924c9d;'>'('</span>);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'*'</span>:
<b>case</b> <span style='color:#924c9d;'>'/'</span>:<span style='color:#644a9b;'>gotOperator</span>(ch,<span style='color:#b08000;'>2</span>,<span style='color:#924c9d;'>'('</span>);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'('</span>:s.<span style='color:#644a9b;'>push</span>(ch);
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>')'</span>:<span style='color:#644a9b;'>gotParenthesis</span>(<span style='color:#924c9d;'>'('</span>);
<b>break</b>;
<b>default</b>:output=output+ch;
}
}
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
output=output+s.<span style='color:#644a9b;'>pop</span>();
<b>return</b> output;
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>preToPost</span>()
{
<b><span style='color:#0095ff;'>Stack</span></b> f=<b>new</b> <b><span style='color:#0095ff;'>Stack</span></b>(input.<span style='color:#644a9b;'>length</span>());
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<input.<span style='color:#644a9b;'>length</span>();i++)
{
<span style='color:#0057ae;'>char</span> ch=input.<span style='color:#644a9b;'>charAt</span>(i);
<b>if</b>(ch==<span style='color:#924c9d;'>'+'</span>||ch==<span style='color:#924c9d;'>'-'</span>||ch==<span style='color:#924c9d;'>'*'</span>||ch==<span style='color:#924c9d;'>'/'</span>)
{
s.<span style='color:#644a9b;'>push</span>(ch);
f.<span style='color:#644a9b;'>push</span>(<span style='color:#924c9d;'>'0'</span>);
}
<b>else</b>
{
output=output+ch;
<b>while</b>(f.<span style='color:#644a9b;'>peek</span>()==<span style='color:#924c9d;'>'1'</span>)
{
output=output+s.<span style='color:#644a9b;'>pop</span>();
f.<span style='color:#644a9b;'>pop</span>();
<b>if</b>(f.<span style='color:#644a9b;'>isEmpty</span>())
<b>break</b>;
}
<b>if</b>(!f.<span style='color:#644a9b;'>isEmpty</span>())
f.<span style='color:#644a9b;'>pop</span>();
f.<span style='color:#644a9b;'>push</span>(<span style='color:#924c9d;'>'1'</span>);
}
}
<b>return</b> output;
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>gotOperator</span>(<span style='color:#0057ae;'>char</span> opThis,<span style='color:#0057ae;'>int</span> prec1,<span style='color:#0057ae;'>char</span> x)
{
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>char</span> opTop=s.<span style='color:#644a9b;'>pop</span>();
<b>if</b>(opTop==x)
{
s.<span style='color:#644a9b;'>push</span>(opTop);
<b>break</b>;
}
<b>else</b>
{
<span style='color:#0057ae;'>int</span> prec2;
<b>if</b>(opTop==<span style='color:#924c9d;'>'+'</span>||opTop==<span style='color:#924c9d;'>'-'</span>)
prec2=<span style='color:#b08000;'>1</span>;
<b>else</b>
prec2=<span style='color:#b08000;'>2</span>;
<b>if</b>(prec2<prec1&&x==<span style='color:#924c9d;'>'('</span>)
{
s.<span style='color:#644a9b;'>push</span>(opTop);
<b>break</b>;
}
<b>else</b> <b>if</b>(prec2<=prec1&&x==<span style='color:#924c9d;'>')'</span>)
{
s.<span style='color:#644a9b;'>push</span>(opTop);
<b>break</b>;
}
<b>else</b>
{
<b>if</b>(x==<span style='color:#924c9d;'>')'</span>)
output=opTop+output;
<b>else</b>
output=output+opTop;
}
}
}
s.<span style='color:#644a9b;'>push</span>(opThis);
}
<b>private</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>gotParenthesis</span>(<span style='color:#0057ae;'>char</span> x)
{
<b>while</b>(!s.<span style='color:#644a9b;'>isEmpty</span>())
{
<span style='color:#0057ae;'>char</span> ch=s.<span style='color:#644a9b;'>pop</span>();
<b>if</b>(ch==x)
<b>break</b>;
<b>else</b>
{
<b>if</b>(x==<span style='color:#924c9d;'>')'</span>)
output=ch+output;
<b>else</b>
output=output+ch;
}
}
}
}
<b>class</b> ExpressionApp
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> s,check=<span style='color:#bf0303;'>"y"</span>;
<span style='color:#0057ae;'>int</span> n;
Evaluation inf;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b>while</b>(check.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>"y"</span>))
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"MENU"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"---------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Infix to Prefix"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Infix to Postfix"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.Prefix to Postfix"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter your choice"</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(n)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the infix expression "</span>);
s=inp.<span style='color:#644a9b;'>readLine</span>();
inf=<b>new</b> <span style='color:#644a9b;'>Evaluation</span>(s);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Prefix expression:- "</span>+inf.<span style='color:#644a9b;'>inToPre</span>());
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the infix expression "</span>);
s=inp.<span style='color:#644a9b;'>readLine</span>();
inf=<b>new</b> <span style='color:#644a9b;'>Evaluation</span>(s);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Postfix expression:- "</span>+inf.<span style='color:#644a9b;'>inToPost</span>());
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the Prefix expression "</span>);
s=inp.<span style='color:#644a9b;'>readLine</span>();
inf=<b>new</b> <span style='color:#644a9b;'>Evaluation</span>(s);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Postfix expression:- "</span>+inf.<span style='color:#644a9b;'>preToPost</span>());
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid input"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Press y to continue"</span>);
check=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com5tag:blogger.com,1999:blog-9138388471242794466.post-85816610796050597402010-02-01T05:24:00.000-08:002016-11-06T05:37:15.035-08:00Write a java program to evaluate a postfix expression using stack6. Write a java program to evaluate a postfix expression using stack. <br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Stack</span></b>
{
<b>private</b> <span style='color:#0057ae;'>int</span>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> top,m;
<b>public</b> <b><span style='color:#0095ff;'>Stack</span></b>(<span style='color:#0057ae;'>int</span> max)
{
m=max;
a=<b>new</b> <span style='color:#0057ae;'>int</span>[m];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<span style='color:#0057ae;'>int</span> key)
{
a[++top]=key;
}
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(a[top--]);
}
}
<b>class</b> Evaluation{
<b>public</b> <span style='color:#0057ae;'>int</span> <span style='color:#644a9b;'>calculate</span>(<b><span style='color:#0095ff;'>String</span></b> s)
{
<span style='color:#0057ae;'>int</span> n,r=<span style='color:#b08000;'>0</span>;
n=s.<span style='color:#644a9b;'>length</span>();
<b><span style='color:#0095ff;'>Stack</span></b> a=<b>new</b> <b><span style='color:#0095ff;'>Stack</span></b>(n);
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<n;i++)
{
<span style='color:#0057ae;'>char</span> ch=s.<span style='color:#644a9b;'>charAt</span>(i);
<b>if</b>(ch>=<span style='color:#924c9d;'>'0'</span>&&ch<=<span style='color:#924c9d;'>'9'</span>)
a.<span style='color:#644a9b;'>push</span>((<span style='color:#0057ae;'>int</span>)(ch-<span style='color:#924c9d;'>'0'</span>));
<b>else</b>
{
<span style='color:#0057ae;'>int</span> x=a.<span style='color:#644a9b;'>pop</span>();
<span style='color:#0057ae;'>int</span> y=a.<span style='color:#644a9b;'>pop</span>();
<b>switch</b>(ch)
{
<b>case</b> <span style='color:#924c9d;'>'+'</span>:r=x+y;
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'-'</span>:r=y-x;
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'*'</span>:r=x*y;
<b>break</b>;
<b>case</b> <span style='color:#924c9d;'>'/'</span>:r=y/x;
<b>break</b>;
<b>default</b>:r=<span style='color:#b08000;'>0</span>;
}
a.<span style='color:#644a9b;'>push</span>(r);
}
}
r=a.<span style='color:#644a9b;'>pop</span>();
<b>return</b>(r);
}
}
<b>class</b> PostfixEvaluation
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b>[] args)<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> input;
<b>while</b>(<b>true</b>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the postfix expresion"</span>);
input=<span style='color:#644a9b;'>getString</span>();
<b>if</b>(input.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>""</span>))
<b>break</b>;
Evaluation e=<b>new</b> <span style='color:#644a9b;'>Evaluation</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Result:- "</span>+e.<span style='color:#644a9b;'>calculate</span>(input));
}
}
<b>public</b> <span style='color:#0057ae;'>static</span> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>getString</span>()<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
<b>return</b> s;
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com12tag:blogger.com,1999:blog-9138388471242794466.post-37912632591331833212010-02-01T05:21:00.000-08:002016-11-06T05:40:20.305-08:00Write a java program to reverse a string using stack5. Write a java program to reverse a string using stack. <br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> <b><span style='color:#0095ff;'>Stack</span></b>
{
<b>private</b> <span style='color:#0057ae;'>char</span>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> top,m;
<b>public</b> <b><span style='color:#0095ff;'>Stack</span></b>(<span style='color:#0057ae;'>int</span> max)
{
m=max;
a=<b>new</b> <span style='color:#0057ae;'>char</span>[m];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<span style='color:#0057ae;'>char</span> key)
{
a[++top]=key;
}
<b>public</b> <span style='color:#0057ae;'>char</span> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(a[top--]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>return</b> (top==-<span style='color:#b08000;'>1</span>);
}
}
<b>class</b> Reverse
{
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> input;
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> output=<span style='color:#bf0303;'>""</span>;
<b>public</b> <span style='color:#644a9b;'>Reverse</span>(<b><span style='color:#0095ff;'>String</span></b> in)
{
input=in;
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>doReverse</span>()
{
<span style='color:#0057ae;'>int</span> n=input.<span style='color:#644a9b;'>length</span>();
<b><span style='color:#0095ff;'>Stack</span></b> a=<b>new</b> <b><span style='color:#0095ff;'>Stack</span></b>(n);
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<n;i++)
a.<span style='color:#644a9b;'>push</span>(input.<span style='color:#644a9b;'>charAt</span>(i));
<b>while</b>(!a.<span style='color:#644a9b;'>isEmpty</span>())
output=output+a.<span style='color:#644a9b;'>pop</span>();
<b>return</b> output;
}
}
<b>class</b> ReverseApp{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b>[] args)<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>String</span></b> s;
<b>while</b>(<b>true</b>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the string"</span>);
s=<span style='color:#644a9b;'>getString</span>();
<b>if</b>(s.<span style='color:#644a9b;'>equals</span>(<span style='color:#bf0303;'>""</span>))
<b>break</b>;
Reverse rev=<b>new</b> <span style='color:#644a9b;'>Reverse</span>(s);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Reversed string:- "</span>+rev.<span style='color:#644a9b;'>doReverse</span>());
}
}
<b>public</b> <span style='color:#0057ae;'>static</span> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>getString</span>()<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>String</span></b> s=inp.<span style='color:#644a9b;'>readLine</span>();
<b>return</b> s;
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com1tag:blogger.com,1999:blog-9138388471242794466.post-36562480366262032922010-02-01T04:31:00.000-08:002016-11-06T05:42:32.489-08:00Implement Library stack using array in java4. In a Lirary the following text books were arranged as a stack in the given order. <br />
1. Discrete Mathematics <br />
2. Mechanics <br />
3. Software Engineering <br />
4. Data Structures <br />
5. Physics <br />
6. Java Programmming <br />
7. Economics <br />
8. Astronomy <br />
The books are placed or removed from the stack one at a time. A student entered the library <br />
and did four pop operations on the stack. Display the current top of the stack.Then the librarian <br />
added two texts(Chemistry and Zoology) to the stack. Another student removed four books <br />
from the stack. Check whether the stack is empty now,if not display the current top of the book stack. <br />
Write a java program to implement this using array. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> Library
{
<b>private</b> <b><span style='color:#0095ff;'>String</span></b>[] a;
<b>private</b> <span style='color:#0057ae;'>int</span> top,i,j,k,m;
<b>public</b> <span style='color:#644a9b;'>Library</span>(<span style='color:#0057ae;'>int</span> max)
{
m=max;
a=<b>new</b> <b><span style='color:#0095ff;'>String</span></b>[m];
top=-<span style='color:#b08000;'>1</span>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>push</span>(<b><span style='color:#0095ff;'>String</span></b> key)
{
<b>if</b>(top==m-<span style='color:#b08000;'>1</span>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"No space in stack"</span>);
<b>else</b>{
top++;
a[top]=key;
}
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>pop</span>()
{
<b>return</b>(a[top--]);
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>peek</span>()
{
<b>return</b>(a[top]);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>showStack</span>()
{
<b>for</b>(i=top;i>=<span style='color:#b08000;'>0</span>;i--)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(top-i+<span style='color:#b08000;'>1</span>+<span style='color:#bf0303;'>"."</span>+a[i]);
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isEmpty</span>()
{
<b>if</b>(top==-<span style='color:#b08000;'>1</span>)
<b>return</b> <b>true</b>;
<b>else</b>
<b>return</b> <b>false</b>;
}
}
<b>class</b> LibraryApp{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b>[] args)<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
Library a=<b>new</b> <span style='color:#644a9b;'>Library</span>(<span style='color:#b08000;'>8</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Astronomy"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Economics"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"java pgm"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"physics"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Ds"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"SE"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Mechanics"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Discrete Mathematics"</span>);
a.<span style='color:#644a9b;'>showStack</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Books taken by 1st student"</span>);
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<<span style='color:#b08000;'>4</span>;i++)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(a.<span style='color:#644a9b;'>pop</span>()+<span style='color:#bf0303;'>" "</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>" "</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Current Stack Top:- "</span>+a.<span style='color:#644a9b;'>peek</span>());
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Chemistry"</span>);
a.<span style='color:#644a9b;'>push</span>(<span style='color:#bf0303;'>"Zoology"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Books taken by 2nd student"</span>);
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<<span style='color:#b08000;'>4</span>;i++)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(a.<span style='color:#644a9b;'>pop</span>()+<span style='color:#bf0303;'>" "</span>);
<b>if</b>(a.<span style='color:#644a9b;'>isEmpty</span>())
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Stack is Empty"</span>);
<b>else</b>{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>" "</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Stack Not Empty"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Current Stack Top:- "</span>+a.<span style='color:#644a9b;'>peek</span>());
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-18058895629620860222010-02-01T04:26:00.000-08:002016-11-06T05:45:50.572-08:00Java program to insert personal details3. Write a java program to insert personal details(name and age) of 'n' members into a array. <br />
The program should perform the following operations. <br />
1. Display the complete array. <br />
2. Search the details of a person by inputting the name. <br />
3. Delete the details of the person by inputting the name. <br />
<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> Person
{
<b>private</b> <span style='color:#0057ae;'>int</span> age;
<b>private</b> <b><span style='color:#0095ff;'>String</span></b> name;
<b>public</b> <span style='color:#644a9b;'>Person</span>(<b><span style='color:#0095ff;'>String</span></b> na,<span style='color:#0057ae;'>int</span> ag)
{
name=na;
age=ag;
}
<b>public</b> <b><span style='color:#0095ff;'>String</span></b> <span style='color:#644a9b;'>getName</span>()
{
<b>return</b>(name);
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>display</span>()
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Name:- "</span>+name);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Age:- "</span>+age);
}
}
<b>class</b> PersonArray
{
<b>private</b> <span style='color:#0057ae;'>int</span> top,max;
<b>private</b> Person[] p;
<b>public</b> <span style='color:#644a9b;'>PersonArray</span>(<span style='color:#0057ae;'>int</span> x)
{
top=<span style='color:#b08000;'>0</span>;
max=x;
p=<b>new</b> Person[x];
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>addPerson</span>(<b><span style='color:#0095ff;'>String</span></b> x,<span style='color:#0057ae;'>int</span> y)
{
<b>if</b>(top<max)
{
p[top++]=<b>new</b> <span style='color:#644a9b;'>Person</span>(x,y);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Inserted successfully "</span>);
}
<b>else</b>
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Array Full. Insertion not Possible "</span>);
}
<b>public</b> Person <span style='color:#644a9b;'>search</span>(<b><span style='color:#0095ff;'>String</span></b> str)
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<top;i++)
{
<b>if</b>(p[i].<span style='color:#644a9b;'>getName</span>().<span style='color:#644a9b;'>equals</span>(str))
<b>return</b> p[i];
}
<b>return</b> <b>null</b>;
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>delete</span>(<b><span style='color:#0095ff;'>String</span></b> str)
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<top;i++)
{
<b>if</b>(p[i].<span style='color:#644a9b;'>getName</span>().<span style='color:#644a9b;'>equals</span>(str))
{
<b>for</b>(;i<top-<span style='color:#b08000;'>1</span>;i++)
p[i]=p[i+<span style='color:#b08000;'>1</span>];
top--;
<b>return</b> <b>true</b>;
}
}
<b>return</b> <b>false</b>;
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>displayAll</span>()
{
<b>for</b>(<span style='color:#0057ae;'>int</span> i=<span style='color:#b08000;'>0</span>;i<top;i++)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(i+<span style='color:#b08000;'>1</span>+<span style='color:#bf0303;'>"th Person's details "</span>);
p[i].<span style='color:#644a9b;'>display</span>();
}
}
}
<b>class</b> PersonApp{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b>[] args)<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<span style='color:#0057ae;'>int</span> n,age,ch=<span style='color:#b08000;'>0</span>;
<b><span style='color:#0095ff;'>String</span></b> name;
<b><span style='color:#0095ff;'>DataInputStream</span></b> inp=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the limit "</span>);
n=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
PersonArray p=<b>new</b> <span style='color:#644a9b;'>PersonArray</span>(n);
<b>while</b>(ch!=<span style='color:#b08000;'>5</span>)
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>" Menu"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1.Insertion"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2.Search"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"3.Delete"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"4.Display"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"5.Exit"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter ur choice "</span>);
ch=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
<b>switch</b>(ch)
{
<b>case</b> <span style='color:#b08000;'>1</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the name "</span>);
name=inp.<span style='color:#644a9b;'>readLine</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the age "</span>);
age=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(inp.<span style='color:#644a9b;'>readLine</span>());
p.<span style='color:#644a9b;'>addPerson</span>(name,age);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>2</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the name "</span>);
name=inp.<span style='color:#644a9b;'>readLine</span>();
Person prson=p.<span style='color:#644a9b;'>search</span>(name);
<b>if</b>(prson==<b>null</b>)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Not found "</span>);
<b>else</b>
{
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Personnal Details"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"--------------------"</span>);
prson.<span style='color:#644a9b;'>display</span>();
}
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>3</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the name "</span>);
name=inp.<span style='color:#644a9b;'>readLine</span>();
<b>if</b>(p.<span style='color:#644a9b;'>delete</span>(name))
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Deleted "</span>);
<b>else</b>
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Not found "</span>);
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>4</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"All Personnal Details"</span>);
p.<span style='color:#644a9b;'>displayAll</span>();
<b>break</b>;
<b>case</b> <span style='color:#b08000;'>5</span>: <b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Bye"</span>);
<b>break</b>;
<b>default</b>:<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Invalid choice"</span>);
}
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Press ENTER to continue"</span>);
<b><span style='color:#0095ff;'>String</span></b> ss=inp.<span style='color:#644a9b;'>readLine</span>();
}
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com1tag:blogger.com,1999:blog-9138388471242794466.post-47653363928641040492010-02-01T04:01:00.000-08:002016-11-06T05:47:30.483-08:00Write a java program to add two matrices.2. Write a java program to add two matrices.<br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> Matrix
{
<b>private</b> <span style='color:#0057ae;'>int</span> n,m,p,q;
<b>public</b> <span style='color:#0057ae;'>int</span> i,j;
<b><span style='color:#0095ff;'>DataInputStream</span></b> in=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b>private</b> <span style='color:#0057ae;'>int</span>[][] a;
<b>public</b> <span style='color:#644a9b;'>Matrix</span>(<span style='color:#0057ae;'>int</span> row,<span style='color:#0057ae;'>int</span> colum)
{
m=row;
n=colum;
a=<b>new</b> <span style='color:#0057ae;'>int</span>[m][n];
}
<b>public</b> <span style='color:#644a9b;'>Matrix</span>()
{}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>getMatrix</span>() <b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<b>for</b>(i=<span style='color:#b08000;'>0</span>;i<m;i++)
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<n;j++)
a[i][j]=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>addMatrix</span>(Matrix m1,Matrix m2)
{
m=m1.<span style='color:#644a9b;'>m</span>;
n=m1.<span style='color:#644a9b;'>n</span>;
a=<b>new</b> <span style='color:#0057ae;'>int</span>[m][n];
<b>for</b>(i=<span style='color:#b08000;'>0</span>;i<m;i++){
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<n;j++)
a[i][j]=m1.<span style='color:#644a9b;'>a</span>[i][j]+m2.<span style='color:#644a9b;'>a</span>[i][j];
}
}
<b>public</b> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>showMatrix</span>()
{
<b>for</b>(i=<span style='color:#b08000;'>0</span>;i<m;i++)
{
<b>for</b>(j=<span style='color:#b08000;'>0</span>;j<n;j++)
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>print</span>(<span style='color:#bf0303;'>" "</span>+a[i][j]);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>""</span>);
}
}
<b>public</b> <span style='color:#0057ae;'>boolean</span> <span style='color:#644a9b;'>isAddPossible</span>(Matrix m1)
{
<b>return</b>(n==m1.<span style='color:#644a9b;'>n</span> && m==m1.<span style='color:#644a9b;'>m</span>);
}
}
<b>class</b> MatrixAdd
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<span style='color:#0057ae;'>int</span> r,c;
<b><span style='color:#0095ff;'>DataInputStream</span></b> in=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the rows and columns of 1st matrix"</span>);
r=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
c=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
Matrix a1=<b>new</b> <span style='color:#644a9b;'>Matrix</span>(r,c);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the rows and columns of 2nd matrix"</span>);
r=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
c=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
Matrix a2=<b>new</b> <span style='color:#644a9b;'>Matrix</span>(r,c);
<b>if</b>(a1.<span style='color:#644a9b;'>isAddPossible</span>(a2))
{
Matrix a3=<b>new</b> <span style='color:#644a9b;'>Matrix</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the 1st array elements"</span>);
a1.<span style='color:#644a9b;'>getMatrix</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the 2nd array elements"</span>);
a2.<span style='color:#644a9b;'>getMatrix</span>();
a3.<span style='color:#644a9b;'>addMatrix</span>(a1,a2);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"1st Array"</span>);
a1.<span style='color:#644a9b;'>showMatrix</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"2nd Array"</span>);
a2.<span style='color:#644a9b;'>showMatrix</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Sum Array"</span>);
a3.<span style='color:#644a9b;'>showMatrix</span>();
}
<b>else</b>
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Addition not possible"</span>);
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com0tag:blogger.com,1999:blog-9138388471242794466.post-39110589990226803002010-02-01T03:58:00.000-08:002016-11-06T05:49:17.133-08:00Write a java program to display your name and roll number on the screen.1. Write a java program to display your name and roll number on the screen. <br />
<pre style='color:#1f1c1b;background-color:#ffffff;'><b>import</b><span style='color:#808000;'> java.io.*;</span>
<b>class</b> Student
{
<b>public</b> <span style='color:#0057ae;'>static</span> <span style='color:#0057ae;'>void</span> <span style='color:#644a9b;'>main</span>(<b><span style='color:#0095ff;'>String</span></b> args[])<b>throws</b> <b><span style='color:#0095ff;'>IOException</span></b>
{
<span style='color:#0057ae;'>int</span> rollNo,m1,m2,m3,total;
<span style='color:#0057ae;'>float</span> avg;
<b><span style='color:#0095ff;'>String</span></b> name;
<b><span style='color:#0095ff;'>DataInputStream</span></b> in=<b>new</b> <b><span style='color:#0095ff;'>DataInputStream</span></b>(<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>in</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the Rollno"</span>);
rollNo=<b><span style='color:#0095ff;'>Integer</span></b>.<span style='color:#644a9b;'>parseInt</span>(in.<span style='color:#644a9b;'>readLine</span>());
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Enter the Name"</span>);
name=in.<span style='color:#644a9b;'>readLine</span>();
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>" Student Details"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"-------------------"</span>);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Roll no "</span>+rollNo);
<b><span style='color:#0095ff;'>System</span></b>.<span style='color:#644a9b;'>out</span>.<span style='color:#644a9b;'>println</span>(<span style='color:#bf0303;'>"Name "</span>+name);
}
}</pre>Arun Rameshhttp://www.blogger.com/profile/09473339994700479183noreply@blogger.com2