public static void main(String args[]){
LinkedList al=new LinkedList();
add("Zafar");
add("Aziz");
add("Jalol");
add("Zafar");
Iterator itr=al.iterator();
while(itr.hasNext())
{
out.println(itr.next());
}
}
}
ArrayList saqlangan ma'lumotlarni LinkedList ham saqlashi mumkin
LinkedListda'gi ma'lumotlarni ArrayListga qo'shib qo'yishga misol
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class ConvertExample {
public static void main(String[] args) {
LinkedList<String> linkedlist = new LinkedList<String>();
linkedlist.add("Zafar");
linkedlist.add("Aziz");
linkedlist.add("Jalol");
linkedlist.add("Fayzullo");
List<String> list = new ArrayList<String>(linkedlist);
for (String str : list)
{
System.out.println(str);
}
}
}
Ekranda:
Zafar
Aziz
Jalol
Fayzullo
ArraList va LinkedList'lar orasidagi farqlar
ArrayList va LinkedList orasida unchalik farqlar ko'p emas. Ulardan ba'zi bir farqlarni ko'rib chiqsak.
1. Qidirish: ArrayListda qidirish jarayoni LinkedList'ga qaraganda tez amalga oshiriladi. ArrayListda qidiruv davomiyligi O(1) LinkeList'da esa O(n) ga teng.
Tarif: ArrayList da elementlar uchun index lar biriktrilgan ma'lumotlarni saqlash strukturasida massivdan foydalanganligi uchun ArrayListda qidiruv tez amalga oshiriladi. LinkedListda esa elementlar joylashuvi boshqacha u doubly linked listni implement qiladi. Shuning uchun qidirilayotgan elementni hamma elementlar ichidan qidiradi.
2. O'chirish: LinkedList da o'chirishni amalga oshirilishi O(1) ga teng ArrayListda esa o'chirilishni bajarilishi O(n) ga teng.
LinkedList da o'chirish ArrayListga nisbatan tezroq amalga oshadi.
Ta'rif: LinkedList elementlarida ikkita nuqta mavjud ya'ni elementning qo'shnilari o'zidan oldigi va keyingi element o'chirilsa, faqat shu qo'shnilarini joylashuvi o'zgaradi xolos. ArrayListda esa element o'chirilgandan keyin barcha elementlarga index'lar boshqatdan beriladi ya'ni har bir elementni boshqa index ga ko'chrib o'tish jarayoni bajariladi.
3. Ma'lumot yozish: LinkedList da add funksiyasini bajarilishi O(1) teng ArrayListda esa bu holat O(n) ga teng. Yozish jarayoni o'chirish jarayonida bo'ladigan amallar bajariladi.
Qisqacha qilib aytganda ArrayList ma'lumotlarni saqlash va qidirishga LinkedList esa ma'lumotlarni qayta ishlashga yaxshidir.
ArrayList va LinkedList lardan qachon foydalaniladi.
Yuqoridagi ta'riflarda aytib o'tilganidek yozish va o'chirishda LinkedList ArrayListga qaraganda ancha tez amalga oshiriladi. Ma'lumot o'chirib yozishda eng yaxshi tanlov bu LinkedList hisoblanadi.
Qidirish jarayoni ArrayList'da Linkedlistga qaraganda tezroq amalga oshiriladi. Shuning uchun qidirish jarayoni amalga oshirilganda ArrayList eng yaxshi tanlovdir.
Do'stlaringiz bilan baham: |