ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript の楽しい質問: 順序付きリスト

JavaScript の楽しい質問: 順序付きリスト

黄舟
黄舟オリジナル
2017-01-22 14:50:332027ブラウズ

順序付きリストは順序なしリストとは異なり、そこに格納される要素は増加または減少などの順序付きの状態になります。多くの順序付きリストの実装では、addAfter のような操作は絶対に見つかりません。これは、順序なしリストの特性の 1 つであるためです。

一般的な順序付きリストには、いくつかの基本的な操作が用意されています:

1.add は、リストに要素を追加し、その順序付けされた状態を維持するために使用されます

2.get 操作は、指定されたインデックスにある要素を取得するために使用されます

3. length プロパティまたはメソッドはリストの長さを取得します

これらの操作の中で、add は最も重要な部分であり、その実装は通常 3 つの部分で構成されます (例として増加シーケンスを取り上げます):

1. リストを左から走査します。右に、挿入された値以上の要素が見つかるまで、この要素の位置が挿入位置になります

2. 挿入位置の右にある要素を 1 つ後ろに移動します

3.その位置の値

function SortedList() {  
    this.length = 0;  
    this.elementData = [];  
}  
  
SortedList.prototype.add = function(val) {  
    var array = this.elementData;  
    for(var i=0;i<array.length;i++){  
        if(val <= array[i]){  
            break;  
        }  
    }  
    for(var j=array.length-1;j>=i;j--){  
        array[j+1] = array[j];  
    }  
    array[i] = val;  
    this.length++;  
}  
  
SortedList.prototype.get = function(i) {  
    return this.elementData[i];  
}

上記は JavaScript に関する興味深い質問です。順序付きリストの内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。

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