-
Javascriptを使用した辞書の作成
JSで実際のMapクラスが非表示にならないように、MyMapクラスを作成しましょう。マップに追加するすべての値を追跡するコンテナオブジェクトを作成します。また、地図を印刷する表示関数も作成します。 例 class MyMap { constructor() { this.container = {}; } display() { console.log(this.container); } } ES6では
-
Javascriptで辞書に要素を追加する
次に、キーと値のペアを辞書に配置できるようにするputメソッドを作成します。これを使用して、putメソッドを実装します。 JSには、辞書のように機能するオブジェクトがあることに注意してください。コンテナのkeyプロパティをvalueに設定するだけです。 例 put(key, value) { this.container[key] = value; } − を使用して、この関数と以前の関数をテストできます。 例 const myMap = new MyMap() myMap.put("key1", "value1") my
-
Javascriptを使用して辞書から要素を削除します
ディクショナリから要素を削除するには、最初にその要素がディクショナリに存在するかどうかを確認する必要があります。 そのためにhasKeyメソッドを使用します。次に、削除演算子を使用して直接削除できます。 このメソッドを呼び出す場所が、キーがディクショナリにすでに存在するかどうかを認識できるように、ブール値を返します。 例 delete(key) { if(this.hasKey(key)) { delete this.container[key]; return true; &n
-
Javascriptを使用して辞書内の要素を検索する
辞書内の特定のキーを検索するgetメソッドを実装します。 例 get(key) { if(this.hasKey(key)) { return this.container[key]; } return undefined; } 繰り返しになりますが、JSオブジェクトは辞書のように非常に実装されているため、コードを追加することなく直接使用できる機能のほとんどを備えています。これも大幅に最適化されているため、関数の実行時間を心配する必要はありません。 これは、-を使用して
-
Javascriptを使用して二重リンクリストから要素を削除する
リンクリストでは、要素の削除は非常に簡単です。削除したいノードを取り除く必要があります。つまり、その参照を失います。考慮する必要がある3つのケースがあります- headから要素を削除する:この場合、head =head.nextを割り当てるだけで、次の要素から前のリンクを削除できます。このようにして、最初の要素の参照を失います。そして、頭が2番目の要素を指し始めます。 テールから要素を削除する:この場合、最後から2番目のノードのnode.nextをnullに割り当てるだけで、リストから最後の要素を削除できます。また、現在のノードを指すようにテールを更新します。 中間から要素を削除する:これ
-
Javascriptの二重リンクリストクラス
これがDoublyLinkedListクラスの完全な実装です- 例 class DoublyLinkedList { constructor() { this.head = null; this.tail = null; this.length = 0; } insert(data, position = this.length) { let node
-
Javascriptの循環リンクリスト
Circular Linked Listは、最初の要素が最後の要素を指し、最後の要素が最初の要素を指すリンクリストのバリエーションです。単一リンクリストと二重リンクリストの両方を循環リンクリストにすることができます。
-
Javascriptの循環としての単一リンクリスト
単一リンクリストでは、最後のノードの次のポインタが最初のノードを指します。
-
Javascriptの循環としての二重リンクリスト
二重リンクリストでは、最後のノードの次のポインタが最初のノードを指し、最初のノードの前のポインタが最後のノードを指し、両方向に循環します。 循環リンクリストでの挿入と削除は、他のリンクリストと同じです。リンクリストの両端で操作を実行している間は、最後のリンクを追跡する必要があります。 循環リンクリストアルゴリズムをガイドとして使用して、循環リンクリストを検索して実装してみることができます。
-
Javascriptでデータ構造を設定する
セットは、特定の順序や繰り返し値なしで特定の値を格納できる抽象データ型です。これは、有限集合の数学的概念をコンピューターで実装したものです。他のほとんどのコレクションタイプとは異なり、セットから特定の要素を取得するのではなく、通常、セットのメンバーシップの値をテストします。
-
Javascriptでセットを使用する必要があるのはいつですか?
順序が重要ではないコンテナに一意の要素を格納し、主にそれを使用してさまざまなオブジェクトのメンバーシップを確認する場合。 セットは、数学セットの場合のように、和集合、共通部分、違いなどの操作を実行する場合にも役立ちます。 独自のセットを定義する方法と、ES6で既存のセットを使用する方法の両方を見てみましょう。 実装するメソッド ES6セットAPIはいくつかのメソッドを提供します。これらのメソッドを実装に実装し、組み込みクラスを使用してそれらを使用する方法も見ていきます。 add() −セットに新しい要素を追加します clear() −セットからすべての要素を削除します de
-
Javascriptを使用したセットの作成
JSで実際のセットクラスが非表示にならないように、MySetクラスを作成しましょう。セットに追加するすべての値を追跡するコンテナオブジェクトを作成します。セットを印刷する表示関数も作成します。 例 class MySet { constructor() { this.container = {}; } display() { console.log(this.container); } } ES6では、S
-
Javascriptを使用してセットに要素を追加する
addメソッドは、値がセットにすでに存在するかどうかをチェックし、存在しない場合は、その値をセットに追加します。次のように実装できます- 例 add(val) { if (!this.has(val)) { this.container[val] = val; return true; } return false; } これは、-を使用してテストできます。 例 const testSet = new MySet(); testSet.add(1); testSet.ad
-
Javascriptを使用してセットから要素を削除します
deleteメソッドは、値がセットにすでに存在するかどうかをチェックし、存在する場合は、その値をセットから削除します。次のように実装できます&minusl 例 delete(val) { if (this.has(val)) { delete this.container[val]; return true; } return false; } これは、-を使用してテストできます。 例 const testSet = new My
-
Javascriptでのリンクリスト表現
上図のように、考慮すべき重要なポイントは次のとおりです。 LinkedListには、firstというリンク要素が含まれています。 各リンクには、データフィールドとnextと呼ばれるリンクフィールドがあります。 各リンクは、次のリンクを使用して次のリンクにリンクされます。 最後のリンクには、リストの終わりを示すためにnullとしてリンクが含まれています。
-
Javascriptのリンクリストの種類
以下はリンクリストのさまざまなフレーバーです。 単純なリンクリスト −アイテムナビゲーションは前方のみです。 二重リンクリスト −アイテムは前後に移動できます。 循環リンクリスト −最後のアイテムには、次のように最初の要素のリンクが含まれ、最初の要素には、前のように最後の要素へのリンクがあります。
-
Javascriptのリストでサポートされている基本操作
以下はリストでサポートされている基本的な操作です。 挿入 −リストの先頭に要素を追加します。 削除 −リストの先頭にある要素を削除します。 表示 −完全なリストを表示します。 検索 −指定されたキーを使用して要素を検索します。 削除 −指定されたキーを使用して要素を削除します。
-
Javascriptを使用してリンクリストを作成する
ヘッドをnullに初期化するコンストラクターを使用して単純なクラスを定義することから始めましょう。また、LinkedListクラスのプロトタイプに、リンクリスト内の各ノードを表す別の構造を定義します。 例 class LinkedList { constructor() { this.head = null; this.length = 0; } } LinkedList.prototype.Node = class { const
-
Javascriptを使用してリンクリストに要素を追加する
リンクリストの特定の位置にデータを挿入する関数insert(data、position)を作成する必要があります。次の手順を実行します- 新しいノードを作成する リストが空かどうかを確認します。その後、ノードをヘッドに追加して戻ります。 そうでない場合は、currElemを使用して挿入する位置まで繰り返します。 currElemをcurrElem.nextと等しくすることにより、リンクリストを繰り返します。 次に、ノードがリスト内の次のノードを指すようにします。これは、リストの残りの部分を追跡するためです。 最後に、currElemからリストの残りの部分へのリンクを解除し、作成したノードを指
-
Javascriptを使用してリンクリストから要素を削除します
リンクリストでは、要素の削除は非常に簡単です。削除したいノードを取り除く必要があります。つまり、その参照を失います。考慮する必要がある3つのケースがあります- headから要素を削除する:この場合、head=head.nextを割り当てるだけです。このようにして、最初の要素の参照を失います。そして、頭が2番目の要素を指し始めます。 テールから要素を削除する:この場合、最後から2番目のノードのnode.nextをnullに割り当てるだけで、リストから最後の要素を削除できます。 中間から要素を削除する:これはより注意が必要です。この場合、削除するノードの前にノードを作成し、削除するノードの後に