Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Answers Viewqa Java-Beginners Multiplication of two polynomials using linked list in java
Login         

View Questions and Answers by Category

Advertisements


 
Have Programming Question? Ask it here!
 
 
 


Rajesh
Multiplication of two polynomials using linked list in java
1 Answer(s)      2 years and 11 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


Advertisement
View Answers

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;
}

//read coefficient fx
public int readCoFx(){
Scanner scan = new Scanner(System.in);
int coef = 0;

System.out.print("Enter Coefficient or 0 to skip to next equation: ");
coef = scan.nextInt();
return coef;
}
//read coefficient gx
public int readCoGx(){
Scanner scan = new Scanner(System.in);
int coef = 0;

System.out.print("Enter Coefficient or 0 to end program: ");
coef = scan.nextInt();
return coef;
}
//read exponent
public int readEx(){
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("");
}


//function to add polynomials
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 {
co = poly1.readCoFx();
if(co != 0){
ex = poly1.readEx();
poly1.insert(co, ex);
}
//poly1.print();
} while (co != 0);

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


Related Tutorials/Questions & Answers:
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
stack using linked list
stack using linked list  how to implement stack using linked list
Advertisements
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!!!
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 !!!
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 !!!
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 !!!
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 !!!
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 !!!
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
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
Linked list  what is difference btw linked list in datastructure and linked list in java
linked list
linked list  program for single linked list
linked list
://www.roseindia.net/java/beginners/linked-list-demo.shtml...linked list  Hi i have a problem with linked list ! how and where i can use linked list? please give me some example.   Please visit
linked list
linked list  hi i have basal problem what is the linked list
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
linked list
linked list   how to write a program using a linked list...); System.out.println("Add elements to LinkedList: "); LinkedList<String> list=new...); } Collections.reverse(list); System.out.println("List of names in reverse order
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  Q: Create your own linked list (do... by repeatedly using your add function to populate a new instance of your linked list... two operations If you are using jdk1.4 or before
linked list example problem - Java Beginners
linked list example problem  Q: Create your own linked list (do... by repeatedly using your add function to populate a new instance of your linked list... two operations If you are using jdk1.4 or before
linked list
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
Queue implementation using linked list.
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
linked list
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
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
Linked list implementation  How to create linkedlist by using array in java? and also How to manipulate
HELP Generic linked list
HELP Generic linked list  How to create Generic linked list example program in Java
Explain Linked List
Explain Linked List   hello, What is Linked List ?   hello, Linked List is one of the fundamental data structures. It consists of a sequence of nodes, each containing arbitrary data fields pointing to the next
How to read bytes from a Linked list - Java Beginners
How to read bytes from a Linked list  i have stored byte array into a linked list. How to read the bytearray dta byte after byte from a linked list.Thanking u in advance Sameer
 

 

 

DMCA.com