Wednesday, 27 February 2013

CircularLinkList, Demo

CircularLinkList:

class Node{
int data;
Node next;

Node(int d){
data = d;
}
}

public class CircularList {
Node Head;
Node Tail;

public void insert(int d){
Node newNode = new Node(d);
Node T =Head;
if(Head == null){
Head = newNode;
}
else{
newNode.next=T;
Tail.next=newNode;
Head=newNode;

}
}
public void display(){
    Node T=Head;
    System.out.println(T.data);
    T=T.next;
    while(T!=Head){
        System.out.println(T.data);
        T=T.next;
    }
}
}


////////////////////////////////////////

public class CircularListDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        CircularList CL=new CircularList();
        for (int i=0; i<10; i++){
            CL.insert(i+1);
           
        }

    }

}

Monday, 25 February 2013

Node, Linklist, LinklistDemo

Node:

public class Node{
int data;
Node next;

Node (int d)
{

data = d ;
// next= null;


}

}
//////////////////
LinkList:



public class Linklist {

Node head;
public void insert(int d){
Node newNode= new Node(d);

if (head==null)
head=newNode;
else
{
Node Temp;
//Prev;
Temp=head;
//Prev=head;

while (Temp.next!=null && d>Temp.data){

Temp=Temp.next;
}
if (Temp.next==null){  //insert as last node

}
else if (Temp==head) // insert as first node
{
newNode.next=head;
head=newNode;
}
else{
newNode.next=Temp.next;
Temp.next=newNode;

}
}

}
public void display(){
Node Temp= head;
while(Temp != null){

}
}
}

///////////////////
LinkListDemo:

public class LinkListDemo {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Linklist Mylist=new Linklist();
Mylist.insert(30);
Mylist.insert(50);
Mylist.insert(60);
Mylist.insert(70);


}

}

Thursday, 21 February 2013

DSA Lab Work


// Class AlgorithmAnalysis
public class AlgorithmAnalysis {

public boolean LinearSearch(int [] array1,int key){
for(int k = 0 ;k <array1.length; k++){
if (key==array1[k]){
System.out.println("Linear Search :key is at  index :"+ k );
return true;
}
}
System.out.println(" Linear Seatch:key is not present");
return false;
}

public boolean BinarySearch(int [] array1, int key){

int low = 0;
        int high = array1.length - 1;
       
        while(high >= low) {
            int middle = (low + high) / 2;
           
            if(array1[middle] == key) {
System.out.println("Binary Search :key is at  index :"+ (middle-1) );
                return true;
            }
            if(array1[middle] < key) {
                low = middle + 1;
            }
            if(array1[middle] > key) {
                high = middle - 1;
            }
       }
System.out.println(" Binary Seatch:key is not present");
       return false;
}

public void display(int[] arr) {
// TODO Auto-generated method stub

}
}

Main Code


import java.util.Arrays;
public class AlgorithmAnalysisDemo{
public static void main(String[] args) {
AlgorithmAnalysis Algo = new AlgorithmAnalysis();
int n= 100;
int[] arr = new int[n];
for(int i=0;i<n;i++){
arr[i] = (int)(Math.random()*1000)+1;
}
Algo.display(arr);

Arrays.sort(arr);
int StartTime = (int) System.nanoTime();
System.out.println(Algo.LinearSearch(arr, arr[n-1]));
int EndTime = (int) System.nanoTime();
System.out.println("Linear Search Run Time is "+ (EndTime-StartTime) + " nano seconds.");

int StartTime1 = (int) System.nanoTime();
System.out.println(Algo.BinarySearch(arr, arr[n-1]));
int EndTime1 = (int) System.nanoTime();
System.out.println("Binary Search Run Time is "+ (EndTime1-StartTime1) + " nano seconds.");

}
}

Wednesday, 13 February 2013

Class AlgorithmAnalysis With Main Class


// Class AlgorithmAnalysis
public class AlgorithmAnalysis {

public boolean LinearSearch(int[] arr, int key)
{
for (int i=0;i<arr.length;i++)
if(key==arr[i])
return true;
return false;
}
public boolean BinarySearch(int[] arr, int key)
{
int Low=0;
int Upper=arr.length-1;
int m=(Low+Upper)/2;

while(key!=arr[m] && Low>0 && Upper<arr.length)
{
if(key<arr[m])
Upper=m-1;
else
Low=m+1;
}
if (key==arr[m])
return true;
else
return false;
}

public void display(int[] arr) {
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i]+" , ");
System.out.println();

}

}


import java.util.Arrays;
public class AlgorithmAnalysisDemo{
public static void main(String[] args) {
AlgorithmAnalysis Algo = new AlgorithmAnalysis();
int n= 100;
int[] arr = new int[n];
for(int i=0;i<n;i++){
arr[i] = (int)(Math.random()*1000)+1;
}
Algo.display(arr);

Arrays.sort(arr);
int StartTime = (int) System.nanoTime();
System.out.println(Algo.LinearSearch(arr, arr[n-1]));
int EndTime = (int) System.nanoTime();
System.out.println("Linear Search Run Time is "+ (EndTime-StartTime) + " nano seconds.");

int StartTime1 = (int) System.nanoTime();
System.out.println(Algo.BinarySearch(arr, arr[n-1]));
int EndTime1 = (int) System.nanoTime();
System.out.println("Binary Search Run Time is "+ (EndTime1-StartTime1) + " nano seconds.");

}
}

Thursday, 7 February 2013

Insertion



public class ArrayList {

int [] arr;
int arrSize;
int currentIndex;


public void MyArrayList(int size) {
arr=new int[size];
arrSize=size;
currentIndex=-1;

}

public void insert (int value){
   if (currentIndex >= arr.length-1){
  int [] Temp =new int [arrSize*2];
  for (int i = 0; i<arr.length ; i++)
  {
  Temp[i] = arr[i];
  }
  currentIndex ++;
  arr = Temp;
  arr[currentIndex] = value;
 
 
   }
         
}