Java Tutorial

 
 
 
 
import java.io.*;
import java.util.*;   //for working with Vectors

class MergSort
{
         String str;
         int value=0;
         static int s1=0,s2=0;
         Vector list1 = new Vector();
         Vector list2 = new Vector();
         Integer intval; //object of Integer class for converting primitive numbers to object numbers

     void getdata()
     {
         try{
              System.out.println(\"\\n=====MERGE SORT=====\");
              BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
              System.out.println(\"\\nNOTE :  Data should be entered in sorted order\");
              System.out.print(\"\\nEnter size of First List : \");
              System.out.flush();
              str=obj.readLine();
              s1=Integer.parseInt(str);
                 for(int i=0;i<s1;i++)        
                    {
                      System.out.print(\"Enter value for Element \"+(i+1)+\" :  \");
                      System.out.flush();
                      str=obj.readLine();
                      value=Integer.parseInt(str);
                      intval = new Integer(value);
                      list1.addElement(intval);
                  }

                System.out.print(\"\\nEnter size of Second List : \");
              System.out.flush();
              str=obj.readLine();
              s2=Integer.parseInt(str);
                  for(    int i=0;i<s2;i++)
                   {
                      System.out.print(\"Enter value for Element \"+(i+1)+\" :  \");
                      System.out.flush();
                      str=obj.readLine();
                      value=Integer.parseInt(str);
                      intval=new Integer(value);
                      list2.addElement(intval);
                   }
            }
            catch(Exception e) {}
      }

                   //MERGE LOGIC
                   void merging()  //method to merg
                    {
                         for(int i=0;i<s2;i++)
                         {
                             list1.insertElementAt(list2.elementAt(i),(s1+i));
                        }
                        System.out.println(\"\\n\\nAFTER MERGING\");
                        for(int i=0;i<s1+s2;i++)
                        {
                            System.out.println(\"Element at(\"+(i+1)+\") : \"+list1.elementAt(i));
                        }
                   }

                //SORT LOGIC
                void sorting() //method for sorting 
                {
                    //creating temporary array
                    int size=list1.size();
                    Vector sort=new Vector();
                    int a,b; //extra for converting object to primitive numbers
                    Integer A,B; //extra for taking object value

                   int first=0,second=s1,third=s1+s2,i,j,c=0;
                   i=first;
                   j=second;
                   while(i<second && j<third)
                   {
                          A=(Integer)list1.elementAt(i);  //Assigning object to object
                          B=(Integer)list1.elementAt(j);  //Assigning object to object

                          a=A.intValue();  //converting object to primitive number
                          b=B.intValue();  //converting object to primitive number

                          if(a < b)   //list1.elementAt(i)   <    list1.elementAt(j)
                            {
                               sort.insertElementAt(A,c);
                               i++;
                            }
                          else
                            {
                              sort.insertElementAt(B,c);
                              j++;
                            }
                         c++;
                    }

                    if(i<second)
                    {
                          while(i<second)
                          {
                              sort.insertElementAt(list1.elementAt(i),c);
                              i++;
                              c++;
                         }
                    }

                    if(j<third)
                    {
                        while(j<third)
                        {
                              sort.insertElementAt(list1.elementAt(j),c);
                               j++;
                               c++;
                        }
                    }

                    System.out.println(\"\\n\\nAFTER SORTING\");
                    for(int k=0;k<sort.size();k++)
                          System.out.println(\"Element at(\"+(k+1)+\") : \"+sort.elementAt(k));
            }

}


class  MergSortData
{
    public static void main(String[] args) 
    {
         MergSort obj=new MergSort();
         obj.getdata();
         obj.merging();
         obj.sorting();
    }
}

    Related Post:
  1. Program to display following things on the client machine a)date and time of the server machine b)date and time of the client machine and difference

  2. Program to declare, initialize and print a String object

  3. Program of creating a file using text fields in windows

  4. Program of an applet to illustrate BarChart

  5. Socket program of multi client chat server

  6. Write a class whose objects holds a current value and have a method to add that value, printing the new value

  7. Program to show the use of Bitwise Operator (~) Complement

  8. Program to show an example of Arrays of String

  9. Program to read rollno, marks of sub1,sub2 and sub3 and on basis of that display result

  10. Program to search an element in an array using Linear Search

  11. Program to display bank account

  12. An applet program to display sum of two number of textField

  13. Program to declare, initialize and print an array of characters

  14. Program that takes a long sentence and a character from the client and count the occurrence of the character in the sentence at the server side

  15. Develop a game application in CORBA for which the player will guess a number between 1 to 100, which will be compared to the random number generated b

  16. Program to read the price of an item in decimal form (like 75.95) and print the output in paise (like 7595 paise).

  17. Dialog Boxes

  18. Corba program of reverse string

  19. Create an interface coversions. Which have the following functions Inchestomillimeters(), hptowatts(),wattstohp(),poundstogram(),gramtopounds()

  20. An applet program that creates string dynamically and displays it

 
 
Didn't find what you were looking for? Find more on An applet program to perform merge sort