ホームページ  >  記事  >  Java  >  JavaのLinkedList

JavaのLinkedList

PHPz
PHPzオリジナル
2024-08-30 15:48:16806ブラウズ

Java の LinkedList は、配列とは異なる線形データ構造です。 Java プログラムでリンク リストを使用することには、利点だけでなく欠点もあります。リンクリスト内の各要素は、ノードと呼ばれるセルに保存されます。各ノードには特定のアドレスがあります。 LinkedList の主な欠点は、各ポイントでノードに簡単にアクセスできないことです。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

各ノードをアドレス指定するために使用されるポインタがあり、特定のノードにアクセスするには、先頭から開始して、そのノードがアクセスする特定のポインタに到達する必要があります。 LinkedList クラスも、他の Java インターフェイスと同様に、多くのコンストラクターとメソッドで構成されます。この記事では、LinkedList で使用されている 2 つのコンストラクターについて説明します。

それらは次のとおりです:

  • LinkedList(): これは、空の LinkedList() を割り当てるために使用されます。
  • LinkedList(Collection C): これは、コレクションのイテレータによって返される、指定されたコレクションのすべての要素を含む順序付きリストを作成するために使用されます。

Java の LinkedList のメソッド

Java LinkedList クラスの一部であるメソッドや関数は数多くあります。この記事では、Java LinkedList クラスの一部である関数のいくつかについて説明します。

それらは次のとおりです:

  • add(int a, I Element): このメソッドは、このリストの特定の位置に特定の要素を挿入するために使用されます。
  • add( E e): このメソッドは、指定された要素をリストの末尾に固定します。
  • add(intindex, Collection C): このメソッドは、指定されたすべての要素をリストの開始位置から挿入します。
  • offerFirst (): このメソッドは、指定された要素をこのリストの先頭に挿入します。
  • addLast(): このメソッドは、リストの最後に要素を挿入するために使用されます。
  • void clear(): このメソッドは、Linkedlist からすべての要素を削除するために使用されます。
  • poll (): リストの最初の要素を削除します。
  • lastIndexOf (): このリスト内で指定された要素が最後に出現するインデックスを返すために使用されます。
  • getLast(): この関数は、LinkedList の最後の要素を返すために使用されます。
  • offer(): このメソッドは、指定された要素をリストの末尾要素として挿入します。
  • offerLast (): このメソッドは、指定された要素をこのリストの最後に挿入します。
  • peek (): リストの最初の要素を取得します。
  • peekFirst (): このメソッドは、リストの最後の要素を取得するために使用され、リストが空の場合は null を返します。
  • addFirst(): このメソッドは、リストの先頭に要素を挿入するために使用されます。
  • peekLast(): このメソッドは、リストの最後の要素を取得するために使用され、リストが空の場合は null を返します。
  • pollFirst (): このメソッドは、このリストの最初の要素を取得して削除するために使用され、このリストが空の場合は null を返します。
  • contains(): この関数は、LinkedList にノードの特定の要素が含まれている場合に true を返します。
  • pollLast (): このメソッドは、このリストの最後の要素を削除するか、このリストが空の場合は null を返します。
  • removeFirst (): このメソッドは、このリストの最初の要素を返します。
  • element(): このメソッドはリストの先頭を取得しますが、削除しません。
  • getFirst(): このメソッドは、LinkedList の最初の要素を返すために使用されます。
  • remove(): このメソッドは、LinkedList の最初の要素を削除します。
  • remove (intindex): このメソッドは、このリスト内の指定された位置にある要素を削除します。
  • removeLast (): このメソッドは、このリストの最後の要素を返します。
  • set (int index, E element): このメソッドは、このリスト内の指定された位置にある要素を指定された要素に置き換えます。
  • size (): このメソッドは、このリスト内の要素の数を返します。

Java での LinkedList の例

言及されている例を以下に示します:

例 #1

このコーディング例では、リンクリストに特定の要素を挿入して削除し、最後にリンクリストを表示する LinkedList メソッドを見ていきます。

コード:

import java.util.*;
public class Example3
{
public static void main(String args[])
{
LinkedList<String> object = new LinkedList<String>();
// Adding elements to the linked list
object.add("A");
object.add("B");
object.addLast("C");
object.addFirst("D");
object.add(2, "E");
object.add("F");
object.add("G");
System.out.println("Linked list : " + object);
object.remove("C");
object.remove(3);
object.removeFirst();
object.removeLast();
System.out.println("Linked list after deletion: " + object);
}
}

出力:

JavaのLinkedList

In the sample output, we see that there are certain elements in the linkedlist, and finally, certain elements are deleted, and then the linkedlist after all the deletion of the elements is shown.

Example #2

In this program, we are going to see four names being printed using sequential order in LinkedList. We use a String LinkedList and use it to print names that can be of any number. We use the While loop here for printing the names which are present in the program.

Code:

import java.util.*;
public class LinkedList1
{
public static void main(String args[])
{
LinkedList<String> al=new LinkedList<String>();
al.add("Ishankamal Mitra");
al.add("Sourya Mukherjee");
al.add("Satyaki Das");
al.add("Debodooty Sarkar");
Iterator<String> itr=al.iterator();
while(itr.hasNext())
{
System.out.println(itr.next());
}
}
}

Output:

JavaのLinkedList

In this program, we check how the coding helps us to print four names in sequential order as mentioned in the LinkedList. In the next program, we are going to see how the sequence is changed; that is, the names are printed in reverse order of the input.

Example #3

In this code, the program inputs the name and then prints the names in the reverse order of their sequence.

Code:

import java.util.*;
public class LinkedList4
{
public static void main(String args[])
{
LinkedList<String> ll=new LinkedList<String>();
ll.add("Ishankamal Mitra");
ll.add("Sourya Mukherjee");
ll.add("Satyaki Das");
//Going through the list of elements in Reverse order
Iterator i=ll.descendingIterator();
while(i.hasNext())
{
System.out.println(i.next());
}
}
}

Output:

JavaのLinkedList

In this program, we use the DescendingIterator(), and we use it to print the names in the reverse order of the input. We can see it very clearly through the program.

Conclusion

In this article, we saw the different constructors and methods which are present in the LinkedList class. Plus, we saw a Java program to illustrate the insertion and deletion of elements in a LinkedList. We also saw the advantages and disadvantages of using LinkedList over arrays. They contain nodes that are not easily accessible and have to be accessed through the LinkedList head. We also notice three examples of coding where names are printed in reverse order, sequential order, and removing elements from a LinkedList. These programs help us to understand the methodology of the LinkedList class.

以上がJavaのLinkedListの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。