Rajesh
Multiplication of two polynomials using linked list in java
1 Answer(s)      5 years and 3 months ago
Posted in : Java Beginners

I am doing a program "Multiplication of two polynomials using linked list in java" for our curriculum, can you please help me in this.

Rajesh

January 26, 2012 at 10:20 AM

```//Class for polynomial linked list
import java.util.Scanner;

class Node {
public int numC;
public int numE;
public Node next;

// elementary constructor
public Node() {
numC = 0;
numE = 0;
next = null;
}

// constructor with two argument
public Node(int c, int e) {
numC = c;
numE = e;
next = null;
}

// primary constructor
public Node(int c, int e, Node n) {
numC = c;
numE = e;
next = n;
}

// accessor method
public int getCo() {
return numC;
}

public int getEx(){
return numE;
}

// accessor method
public Node getNext() {
return next;
}

// mutator method
public void setCof(int c){
numC = c;
}

public void setExp(int e){
numE = e;
}
// mutator method for next
public void setNext(Node nextNode) {
next = nextNode;
}
} // end of class Node

class Polynomial {
private Node front;
public Polynomial(){
front = null;
}

Scanner scan = new Scanner(System.in);
int coef = 0;

coef = scan.nextInt();
return coef;
}
Scanner scan = new Scanner(System.in);
int coef = 0;

System.out.print("Enter Coefficient or 0 to end program: ");
coef = scan.nextInt();
return coef;
}
Scanner scan = new Scanner(System.in);
int exp = 0;

System.out.print("Enter Exponent: ");
exp = scan.nextInt();
return exp;
}

//insert Node
public void insert(int coef, int exp){
Node temp = new Node(coef, exp, null);
//insert temp to 1st if empty
if (front == null)
front = temp;
else {

Node p = null;
Node q = front;
//insert in front if exponent is higher
if (temp.getEx() > q.getEx()){
temp.setNext(front);
front = temp;
} else
{//insert at middle or end
while (q != null && q.getEx() > temp.getEx()){

p = q;
q = q.getNext();
}

p.setNext(temp);
temp.setNext(q);

}
}
}
public void mulInsert(int coef, int exp){
//Node temp = new Node(coef, exp, null);
//insert temp to 1st if empty
System.out.println("coef="+coef+"exp="+exp);
if (front == null)
front = new Node(coef,exp,null);
else {

Node p = null;
Node q = front;
//insert in front if exponent is higher
if (exp > q.getEx()){
Node temp = new Node(coef,exp,null);
temp.setNext(front);
front = temp;
} else
{//insert at middle or end
while (q != null && q.getEx() >= exp){
if (q.getEx() == exp)
{
q.numC += coef;
q=q.getNext();
continue;
}
p = q;
q = q.getNext();
}

Node temp = new Node(coef,exp,null);
p.setNext(temp);
temp.setNext(q);

}
}

}

//print function for the equations
public void print(){
Node p = front;
while(p != null){
System.out.print("("+p.getCo()+ "x" + p.getEx()+")");
p = p.getNext();
}
System.out.println("");
}

public static Polynomial addPoly(Polynomial poly1, Polynomial poly2){
Polynomial tempPoly = new Polynomial();
//if poly1 exp is > poly 2 exp then power = poly 1 exp else power = poly 2 exp
int power = (poly1.front.getEx() > poly2.front.getEx()) ? poly1.front.getEx() : poly2.front.getEx();

while (power >=0){
Node n1 = poly1.front;
while (n1 != null){
if (n1.getEx() == power)
break;
n1 = n1.getNext();
}

Node n2 = poly2.front;
while (n2 != null){
if (n2.getEx() == power)
break;
n2 = n2.getNext();
}

if((n1 != null) && (n2 != null))
tempPoly.insert((n1.getCo() + n2.getCo()), n1.getEx());
else if (n1 != null)
tempPoly.insert(n1.getCo(), n1.getEx());
else if (n2 != null)
tempPoly.insert(n2.getCo(), n2.getEx());
power--;
}
return tempPoly;
}

public static Polynomial mulPoly(Polynomial poly1, Polynomial poly2){
Polynomial tempPoly = new Polynomial();

Node n1 = poly1.front;

while (n1 != null ){
Node n2 = poly2.front;
while(n2 != null){
tempPoly.mulInsert((n1.getCo()*n2.getCo()),(n1.getEx() + n2.getEx()));
n2 = n2.getNext();
}
n1= n1.getNext();
}
return tempPoly;
}
}

//driver
public class PolyDrive {
public static void main(String [] args){
Polynomial poly1 = new Polynomial();
Polynomial poly2 = new Polynomial();
Polynomial poly3 = new Polynomial();
Polynomial poly4 = new Polynomial();
int co;
int ex;

do {
if(co != 0){
poly1.insert(co, ex);
}
//poly1.print();
} while (co != 0);

do {
if(co != 0){
poly2.insert(co, ex);
}
//poly2.print();
} while (co != 0);
poly1.print();
poly2.print();
//poly3.print();
poly4 = Polynomial.mulPoly(poly1,poly2);
poly4.print();
}
}
```

Multiplication of two polynomials using linked list in java
Multiplication of two polynomials using linked list in java  I am doing a program "Multiplication of two polynomials using linked list in java... for polynomial linked list import java.util.Scanner; class Node { public int
write a java pogram to add elements to linked list using keyboard and display it
write a java pogram to add elements to linked list using keyboard and display it  write a java pogram to add elements to linked list using keyboard and display
java linked list urgent!!!  Q1. Generate 10 thousand random integers with values in the range between 1 to 100. Q2. Store each randomly generated number into a node and then attach the node to a linked list. The list must
java linked list urgent !!!  Q1. Generate 10 thousand random integers with values in the range between 1 to 100. Q2. Store each randomly generated number into a node and then attach the node to a linked list. The list must
java linked list urgent !!!  Q1. Generate 10 thousand random integers with values in the range between 1 to 100. Q2. Store each randomly generated number into a node and then attach the node to a linked list. The list must
java linked list urgent !!!  Q1. Generate 10 thousand random integers with values in the range between 1 to 100. Q2. Store each randomly generated number into a node and then attach the node to a linked list. The list must
java linked list urgent !!!  Q1. Generate 10 thousand random integers with values in the range between 1 to 100. Q2. Store each randomly generated number into a node and then attach the node to a linked list. The list must
java linked list urgent !!!  Q1. Generate 10 thousand random integers with values in the range between 1 to 100. Q2. Store each randomly generated number into a node and then attach the node to a linked list. The list must
Core java linked list example  What is the real time example for linked list
How to create a Student data base using Linked List in java
How to create a Student data base using Linked List in java  I want a program by using linked list in java. The data stored must... Record2 sandhya 22 5apr By using linked list I hve
linked list in java - Java Beginners
linked list in java  Hi, how to implement linked list in java using... information. http://www.roseindia.net/java/beginners/linked-list-demo.shtml...(); for (int i = 0; i < N; i++) { // look up a value in the list // using
linked list  hi i have basal problem what is the linked list
in the following logical linked list represents Computer Number. 76(head) 98 54...? to ?66?. The segment should also display the new contents of the linked list. ii. Write a program segment to copy all ?Dell? computers to a new linked list
creating java linked list - Java Beginners
creating java linked list  how can one create a sorted linked list...("Size of list: " + queue.size()); System.out.println("Queue head using peek : " + queue.peek()); System.out.println("Queue head using element
linked list example problem - Java Beginners
linked list example problem - Java Beginners
linked list   how to add student and mark and number from file in linked list and print them also how to make search function plz can help me sooon
Description: The advantage of using linked list is that there is no size limit. The size of queue grow and shrink as per insertion and deletion takes place. Code: # include <stdio.h> # include <stdlib.h> struct node
delete a node from singly linked list in java
delete a node from singly linked list in java  Write a program(in java), if given a pointer to a node (not the tail node) in a singly linked list, delete that node from the linked list.   could you tell your question
program to manage the registration details for the institute. 1. Use a linked list to manage the details of all registered students. a. Create your own linked list...linked list  Data Structures An English institute has a different
Concatenate two linked lists  hello, How to concatenate two linked lists?   hii, You can change null pointer of the first linked list to point the header of the second linked list
code for multiplication of matrix in java using methods
code for multiplication of matrix in java using methods  code for multiplication of matrix in java using methods
Linked list implementation  How to create linkedlist by using array in java? and also How to manipulate