কম্পিউটার টিউটোরিয়াল

জাভা প্রোগ্রাম: LinkedList ইমপ্লিমেন্টেশন

এই আর্টিকেলে আমরা বুঝব কীভাবে লিঙ্কড লিস্ট ইমপ্লিমেন্ট করতে হয়। java.util.LinkedList ক্লাসের অপারেশনগুলো ডাবলি-লিঙ্কড লিস্টের মতো কাজ করে।

ধরুন ইনপুট:

Run the program

চাহিদা আউটপুট:

The elements of the linked list are: 100 150 200 250

অ্যালগরিদম

Step 1 - START 
Step 2 - প্রয়োজনীয় মেম্বারের সাথে একটি ক্লাস তৈরি করুন 
Step 3 - এলিমেন্ট যোগ করার জন্য 'insert' ফাংশন ডিফাইন করুন 
Step 4 - 'main' মেথডে ক্লাসের নতুন ইনস্ট্যান্স তৈরি করুন 
Step 5 - একটি লিস্ট তৈরি করুন এবং 'insert' মেথড দিয়ে এলিমেন্ট যোগ করুন 
Step 6 - লিস্টের ওপর ইটারেট করুন এবং বর্তমান নোডের মান প্রদর্শন করুন 
Step 7 - পরবর্তী নোডে যান এবং একই অপারেশন করুন 
Step 8 - লিস্টের শেষে পৌঁছানো পর্যন্ত এটি করুন 
Step 9 - ফলাফল প্রদর্শন 
Step 10 - STOP

উদাহরণ ১

এখানে সকল অপারেশন 'main' ফাংশনের অধীনে বাঁধা হয়েছে।

public class Demo { 
    Node head; 
    static class Node { 
        int data; 
        Node next_element; 
        Node(int element){ 
            data = element; 
            next_element = null; 
        } 
    } 
    public static Demo insert(Demo input_list, int data){ 
        Node new_node = new Node(data); 
        new_node.next_element = null; 
        if (input_list.head == null) { 
            input_list.head = new_node; 
        } else { 
            Node last = input_list.head; 
            while (last.next_element != null) { 
                last = last.next_element; 
            } 
            last.next_element = new_node; 
        } 
        return input_list; 
    } 
    public static void main(String[] args){ 
        Demo input_list = new Demo(); 
        System.out.print("A linked list is declared: \n"); 
        input_list = insert(input_list, 100); 
        input_list = insert(input_list, 150); 
        input_list = insert(input_list, 200); 
        input_list = insert(input_list, 250); 
        Node current_node = input_list.head; 
        System.out.print("The elements of the linked list are: \n"); 
        while (current_node != null) { 
            System.out.print(current_node.data + " "); 
            current_node = current_node.next_element; 
        } 
    } 
}

আউটপুট

A linked list is declared: 
The elements of the linked list are: 100 150 200 250

উদাহরণ ২

এখানে অপারেশনগুলো ফাংশনে এনক্যাপসুলেট করা হয়েছে অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং প্রদর্শন করতে।

public class Demo { 
    Node head; 
    static class Node { 
        int data; 
        Node next_element; 
        Node(int element){ 
            data = element; 
            next_element = null; 
        } 
    } 
    public static Demo insert(Demo input_list, int data){ 
        Node new_node = new Node(data); 
        new_node.next_element = null; 
        if (input_list.head == null) { 
            input_list.head = new_node; 
        } else { 
            Node last = input_list.head; 
            while (last.next_element != null) { 
                last = last.next_element; 
            } 
            last.next_element = new_node; 
        } 
        return input_list; 
    } 
    public static void print_list(Demo input_list){ 
        Node current_node = input_list.head; 
        System.out.print("The elements of the linked list are: \n"); 
        while (current_node != null) { 
            System.out.print(current_node.data + " "); 
            current_node = current_node.next_element; 
        } 
    } 
    public static void main(String[] args){ 
        Demo input_list = new Demo(); 
        System.out.print("A linked list is declared: \n"); 
        input_list = insert(input_list, 100); 
        input_list = insert(input_list, 150); 
        input_list = insert(input_list, 200); 
        input_list = insert(input_list, 250); 
        print_list(input_list); 
    } 
}

আউটপুট

A linked list is declared: 
The elements of the linked list are: 100 150 200 250
  1. লিস্ট থেকে সাবলিস্ট রিমুভ করার জাভা প্রোগ্রাম

  2. লিস্টকে দুটি হ্যালফে ভাগ করার জাভা প্রোগ্রাম

  3. জাভা প্রোগ্রাম: প্রাইভেট কনস্ট্রাক্টর (Private Constructor) ইমপ্লিমেন্ট করা

  4. জাভা প্রোগ্রাম: বহু بورোত্তরাধিকার (Multiple Inheritance) বাস্তবায়ন করা