C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のLinkedList.AddFirstメソッドで先頭にノードを追加する方法

連結リスト(LinkedList)において、リストの先頭に新しいノードを追加したい場合は、AddFirst メソッドを使用します。このメソッドを使うことで、既存の要素をすべて後ろにずらすことなく、効率的に先頭へ要素を挿入できます。

LinkedListの準備

まずは、文字列型のLinkedListを作成してみましょう。配列をコンストラクタに渡すことで、初期要素を持つリストを簡単に生成できます。

string[] students = {"Jenifer", "Angelina", "Vera"};
LinkedList<string> list = new LinkedList<string>(students);

AddFirstメソッドで先頭に要素を追加する

作成したリストの先頭に新しい要素を追加するには、AddFirst() メソッドを呼び出します。引数に追加したい値を指定するだけで、その値が最初のノードとして挿入されます。

list.AddFirst("Natalie");

サンプルコード

以下は、AddFirstメソッドの動作を確認できる完全なサンプルプログラムです。追加前と追加後のリストの内容を出力して比較しています。

using System;
using System.Collections.Generic;

class Demo {
    static void Main() {
        string[] students = {"Jenifer", "Angelina", "Vera"};
        LinkedList<string> list = new LinkedList<string>(students);

        foreach (var stu in list) {
            Console.WriteLine(stu);
        }

        // 先頭にノードを追加
        Console.WriteLine("先頭にノードを追加しました...");
        list.AddFirst("Natalie");

        foreach (var stu in list) {
            Console.WriteLine(stu);
        }
    }
}

実行結果

Jenifer
Angelina
Vera
先頭にノードを追加しました...
Natalie
Jenifer
Angelina
Vera

ポイントまとめ

  • AddFirstメソッドは、LinkedListの先頭に新しいノードを追加します。
  • 逆に末尾に追加したい場合は、AddLast メソッドを使用します。
  • LinkedListは双方向連結リストのため、先頭・末尾への追加・削除が O(1) の計算量で高速に行えます。
  • 戻り値として追加されたノード(LinkedListNode<T>)が返されるため、そのノードを基準にさらに操作することも可能です。
  1. 【C#】String.Join()メソッドで文字列配列を連結する方法

    String.Join()メソッドとはC#のString.Join()メソッドは、文字列配列のすべての要素を1つの文字列に連結するためのメソッドです。各要素の間には、引数で指定した区切り文字(セパレーター)が自動的に挿入されます。たとえば、区切り文字として改行コード「\n」を指定すれば、配列の各要素がそれぞれ別の行に配置された、複数行の文字列を簡単に作成できます。基本的な構文String.Join(\n, starray);第1引数: 要素間に挿入する区切り文字第2引数: 連結対象の文字列配列戻り値: 連結された1つの文字列サンプルコード以下は、5つの文字列要素を持つ配列を改行コードで連結し、

  2. Pythonでタプルのリストを文字列にフラット化する方法

    はじめにPythonでタプルのリスト(リスト内に含まれる複数のタプル)を文字列形式にフラット化したい場合、str関数とstripメソッドを組み合わせることで簡単に実現できます。まず前提として、リストは整数・浮動小数点数・文字列など、さまざまなデータ型の値を混在させて格納できる柔軟なデータ構造です。タプルのリストとは、リストの中に複数のタプルが格納されている状態を指します。strip() メソッド: 文字列の先頭と末尾から、指定した特定の文字を取り除きます。str() 関数: 引数として渡されたデータを文字列型に変換します。以下に具体的な実装例を示します。サンプルコードmy_list = [(1