Monday, December 31, 2018

Difference between ArrayList and LinkedList?
Similarities: Both implements List interface(linkedlist also implements deque interface), maintains insertion order and can contain duplicate elements. Both are non synchronized classes can be made synchronized explicitly by using Collections.synchronizedList method .
Differences: 
  • ArrayList internally uses a dynamic array to store the elements. LinkedList internally uses a doubly linked list to store the elements.
  • Updation and Deletion(manipulation) are slow because it internally uses an array. If any element is removed from the array, all the bits are shifted in memory. Manipulation with LinkedList is faster in LinkedList because it uses a doubly linked list, so no bit shifting is required in memory. 
  • An ArrayList class can act as a list only because it implements only List. LinkedList class can act as a list and queue both because it implements List as well as Deque interfaces
  • ArrayList is better for storing and accessing data. LinkedList is better for manipulating data.
  • LinkedList has more memory overhead than ArrayList because in ArrayList each index only holds actual object (data) but in case of LinkedList each node holds both data and address of next and previous node.
Performance: 
  • (ArrayList gives variable performance O(n) in worst case (while removing first element) and O(1) in best case (While removing last element). LinkedList remove operation gives O(1) performance)
  • ArrayList search operation is pretty fast compared to the LinkedList search operation. ArrayList gives the performance of O(1) while LinkedList performance is O(n).

Related Posts:

  • Extract numeric value from a String                    package seleniumrepo;                           public class ExtractNumerics{  … Read More
  • Armstrong Program in Java Write a Java program to find whether given number is Armstrong or not Armstrong numbers are: 153, 370, 371, 407 Definition: We call a given number as Armstrong if it is equal to the sum of the powers of its own digits. Ex:&n… Read More
  • White Box Testing (WBT) vs Black Box Testing (BBT) Difference between White Box Testing and Black Box Testing: WBT: This is defined as method of testing in which one can perform testing on an application having internal structural knowledge of it. This is also kno… Read More
  • How to iterate through a Map Elements we cannot iterate a Map directly using iterators, because Map are not Collection. There are different methods to iterate through MAP elements: Method 1: Using Iterator and keySet(). package seleniumrepo; import java.ut… Read More
  • BufferedReader vs Scanner Difference between BufferedReader and Scanner: It can parse the user input and read an int, short, byte, float, long and double apart from String. On the other hand, BufferedReader can only read String in Java. BuffredReade… Read More

0 comments:

Post a Comment

Selenium Training in Realtime

Blog helps to a student or IT employee to develop or improve skills in Software Testing.

Followers

About Me

My photo
Hyderabad, Andhra Pradesh, India
I am Automation Testing Professional. I have completed my graduation in B.Tech (Computers) from JNTU Hyderabad and started my career in Software Testing accidentally since then, I passionate on learning new technologies

Contact Form

Name

Email *

Message *

Popular Posts