Skip to main content

Singly Linked List - Java Implementation

------------------------------File 1: Employee.java ----------------------------------

package org.Solutions;

public class Employee {
String empFirstName;
String empLastName;
String dateOfBirth;
String  empZipCode;

public Employee(){
empFirstName = "";
empLastName  = "";
dateOfBirth = "<YYYYMMDD>";
empZipCode = "000-0000";
}

public Employee(String empFirstName,String empLastName,String dateOfBirth,String empZipCode){
this.empFirstName = empFirstName;
this.empLastName  = empLastName;
this.dateOfBirth = dateOfBirth;
this.empZipCode = empZipCode;
}

public String getEmpFirstName() {
return empFirstName;
}

public void setEmpFirstName(String empFirstName) {
this.empFirstName = empFirstName;
}

public String getEmpLastName() {
return empLastName;
}

public void setEmpLastName(String empLastName) {
this.empLastName = empLastName;
}

public String getDateOfBirth() {
return dateOfBirth;
}

public void setDateOfBirth(String dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}

public String getEmpZipCode() {
return empZipCode;
}

public void setEmpZipCode(String empZipCode) {
this.empZipCode = empZipCode;
}

public void printAll(){
System.out.println("--------------------------------------------------------------------------------------");
System.out.println("Name :"+this.empFirstName+" "+this.empLastName);
System.out.println("DOB :"+this.dateOfBirth);
System.out.println("ZipCode :"+this.empZipCode);
System.out.println("----------------------END OF RECORD---------------------------------------------------");
}
}


------------------------------File 2: Node.java ----------------------------------
package org.Solutions;

//Singly linked list implementation
public class Node {
Employee emp;
Node next=null;

public Node(Employee emp){
this.emp=emp;
}

public void add(Employee emp){
Node newNode=new Node(emp);
Node nextNode=this;
while(nextNode.next != null){
nextNode=nextNode.next;
}
nextNode.next=newNode;
}

public void traverse(){
Node n=this;
while(n!=null){
n.emp.printAll();
n=n.next;
}
}

}

------------------------------File 3: MainClass.java ----------------------------------

package org.Solutions;

public class MainClass {

public static void main(String[] args) {
Node empNode=new Node(new Employee("First Name","Last Name","19800101","123-4567"));
empNode.add(new Employee("First Name","Last Name","19800201","123-4568"));
empNode.add(new Employee("First Name","Last Name","19800301","123-4569"));
empNode.add(new Employee("First Name","Last Name","19800401","123-4566"));
empNode.add(new Employee("First Name","Last Name","19800501","123-4566"));
empNode.traverse();
}

}


Output:
--------------

--------------------------------------------------------------------------------------
Name :First Name Last Name
DOB :19800101
ZipCode :123-4567
----------------------END OF RECORD---------------------------------------------------
--------------------------------------------------------------------------------------
Name :First Name Last Name
DOB :19800201
ZipCode :123-4568
----------------------END OF RECORD---------------------------------------------------
--------------------------------------------------------------------------------------
Name :First Name Last Name
DOB :19800301
ZipCode :123-4569
----------------------END OF RECORD---------------------------------------------------
--------------------------------------------------------------------------------------
Name :First Name Last Name
DOB :19800401
ZipCode :123-4566
----------------------END OF RECORD---------------------------------------------------
--------------------------------------------------------------------------------------
Name :First Name Last Name
DOB :19800501
ZipCode :123-4566
----------------------END OF RECORD---------------------------------------------------

Comments

Popular posts from this blog

CODILITY: Determine whether given string of parentheses is properly nested.

Task description A string S consisting of N characters is called  properly nested  if: S is empty; S has the form " (U) " where U is a properly nested string; S has the form " VW " where V and W are properly nested strings. For example, string " (()(())()) " is properly nested but string " ()) " isn't. Write a function: class Solution { public int solution(String S); } that, given a string S consisting of N characters, returns 1 if string S is properly nested and 0 otherwise. For example, given S = " (()(())()) ", the function should return 1 and given S = " ()) ", the function should return 0, as explained above. Assume that: N is an integer within the range [ 0 .. 1,000,000 ]; string S consists only of the characters " ( " and/or " ) ". Complexity: expected worst-case time complexity is O(N); expected worst-case space complexity is O(1) (not counting the storage requi...

Distinct: Compute number of distinct values in an array.

Task description Write a function class Solution { public int solution(int[] A); } that, given a zero-indexed array A consisting of N integers, returns the number of distinct values in array A. Assume that: N is an integer within the range [ 0 .. 100,000 ]; each element of array A is an integer within the range [ −1,000,000 .. 1,000,000 ]. For example, given array A consisting of six elements such that: A[0] = 2 A[1] = 1 A[2] = 1 A[3] = 2 A[4] = 3 A[5] = 1 the function should return 3, because there are 3 distinct values appearing in array A, namely 1, 2 and 3. Complexity: expected worst-case time complexity is O(N*log(N)); expected worst-case space complexity is O(N), beyond input storage (not counting the storage required for input arguments). Elements of input arrays can be modified. class Solution { public int solution ( int [] A) { // write your code in Java SE 8 int len=A.length; int count= 1 ; ...

change directory (cd) function for an abstract file system ( Java Implementation )

Write a function that provides change directory (cd) function for an abstract file system. Notes: Root path is '/'. Path separator is '/'. Parent directory is addressable as "..". Directory names consist only of English alphabet letters (A-Z and a-z). For example, new Path("/a/b/c/d").cd("../x").getPath() should return "/a/b/c/x". Note: The evaluation environment uses '\' as the path separator. public class Path {     private String path;     public Path(String path) {         this.path = path;     }     public String getPath() {         return path;     }     public Path cd(String newPath) {         //throw new UnsupportedOperationException("Waiting to be implemented."); String[] newP=newPath.split("/");     String[] oldP=path.split("/");     int lnCount=0;     for(String str:newP){     if(st...