Java में ArrayList के बजाय LinkedList का उपयोग कब करें?
नमस्ते! मैंने Java सीखना शुरू किया है और मुझे LinkedList और ArrayList के बीच चयन की समस्या का सामना करना पड़ा। मैं समझता हूँ कि दोनों List interface को implement करते हैं, लेकिन मैं यह नहीं समझ पा रहा हूँ कि किन स्थितियों में किसका उपयोग करना चाहिए।
मैंने एक सरल test लिखा:
```java
List arrayList = new ArrayList<>();
List linkedList = new LinkedList<>();
// 100000 elements जोड़ना
long start = System.nanoTime();
for (int i = 0; i < 100000; i++) {
arrayList.add("Element " + i);
}
long end = System.nanoTime();
System.out.println("ArrayList add: " + (end - start) + " ns");
start = System.nanoTime();
for (int i = 0; i < 100000; i++) {
linkedList.add("Element " + i);
}
end = System.nanoTime();
System.out.println("LinkedList add: " + (end - start) + " ns");
```
ArrayList ने लगभग 15-20 ms दिखाया, जबकि LinkedList ने 25-30 ms। लेकिन मैंने सुना है कि LinkedList बीच में insertion के लिए तेज़ है। मैंने प्रयास किया:
```java
// बीच में insertion
start = System.nanoTime();
arrayList.add(50000, "INSERTED");
end = S