js アルゴリズムの並べ替えと配列の重複排除の詳細な概要_javascript スキル
実際、配列のsortメソッドを使用してjsで配列のソートを実装するのは比較的簡単です。
1. 並べ替え
配列ソートの簡単な実装
var arr = [] ;
for(var i=0;i arr.push(Math.floor(Math.random()*100))
}
arr .sort(function (a,b){
return a>b?1:-1;
})
alert(arr)
単純に並べ替えを使用することはできませんデフォルトでは、sort メソッドは、私たちが考えているような数値サイズではなく、ASCII アルファベット順にソートされます。 sort() メソッドはメソッドをパラメータとして受け入れることができます。このメソッドには 2 つのパラメータがあります。各並べ替え比較における 2 つの配列項目を表します。 sort() がソートするとき、このパラメーターは 2 つの配列項目が比較されるたびに実行され、2 つの比較された配列
項目は引数としてこの関数に渡されます。関数が値 1 を返した場合、2 つの配列項目の順序は交換されます。それ以外の場合は交換されません。
アルゴリズムの配列ソート
for(var i=0;i arr.push(Math.floor(Math.random()*100))
}
//ソートなしの arr 配列を生成します。
function sort(arr,start,end){
//配列の長さは 1
if(start == end ){
return [arr[start]]
} else if(start == end-1){
[end]、arr [start]
} else {l = math.floor((start end)/2) //左側の配列
var arrLeft = sort(arr, start,l);
//右側の配列
var arrRight = sort (arr,l 1,end); /Return result
var result = [];
// 左右の配列を 2 つの部分に分割し、配列の最初の数値のみを比較し、値が小さい場合は結果に入れて削除します小さい値を配列で使用します。左の配列または右の配列が表示され、データが存在しない場合
//結果の配列は concat を使用してデータのある配列と結合され、結果が返されます
while(arrLeft.length>0 || arrRight.length> ;0 ){
if(arrLeft.length==0){
result = result.concat(arrRight);
ブレーク;
}else if(arrRight.length==0){
result = result.concat(arrLeft);
if(arrLeft[0]
document.write(arr '
' arrSort);
説明: 配列のソートでは主に、配列を 2 つに分割できなくなるまで分割します。配列の長さが奇数と 2 に分割されるため、最終的に唯一の選択肢は配列を 1 つまたは 2 つに分割することです。偶数の分割 最終配列に 1 つまたは 2 つしかない場合、ソートが開始され、結果が返され、これらの結果が 1 つずつ比較されてマージされます。なぜこの方法がこんなに複雑なのかと思われるかもしれませんが、実際にはもちろん使用できますが、データが数十、数百、すべての人の場合でもパフォーマンスという言葉が使われます。計算された結果 データが数億または数十億もの巨大な場合、まだ最初の方法を使用する自信がありますか? 実際、js のアルゴリズムは、多くの問題を小さな問題に分割して解決します。解決する。
2. 配列から重複を削除します
重複を削除する簡単な方法: まず空の配列を宣言し、重複した配列を for ループに挿入し、重複ではない繰り返しの挿入をスキップします
var arr = [];
for(var i=0;i<20;i ){
arr .push(parseInt (Math.random()*10));
}
Array.prototype.indexOf = function(n){
for(var i=0;i
return i;
}
}
return -1;
関数 RemoveDup(arr){
var result = [];
for(var i=0;i
result.push(arr[i]);
} />'
重複を削除するアルゴリズム配列
if(this [i] == n){
return i; [arr[s]]
}else{
return [arr[s],arr[e]]; s,l);
//右側
var arrR = RemoveDup (arr,l 1,e);
//最初に結果をコピーします
var result = arrL;
// 結果に一意のデータを挿入する
for(var i= 0;i
}
結果を返します。 /Return result
}
var arrDup = RemoveDup(arr, 0, arr.length-1);
document .write(arr '
' arrDup);
説明: 最後に 1 つのデータまたは 2 つの配列だけが残るまで繰り返し配列を切り取り、左側のデータを結果に入れ、右側の繰り返し挿入をスキップします。ループが完了するまで、結果を返すことができます

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











この記事では、Windows 11/10 で写真を撮影日順に並べ替える方法を紹介し、Windows で写真が日付順に並べ替えられない場合の対処法についても説明します。 Windows システムでは、画像ファイルを見つけやすくするために、写真を適切に整理することが重要です。ユーザーは、日付、サイズ、名前などのさまざまな並べ替え方法に基づいて写真を含むフォルダーを管理できます。さらに、必要に応じて昇順または降順を設定して、ファイルをより柔軟に整理できます。 Windows 11/10 で写真を撮影日で並べ替える方法 Windows で写真を撮影日で並べ替えるには、次の手順に従います。 [ピクチャ]、デスクトップ、または写真を配置する任意のフォルダを開きます。 リボン メニューで、

Outlook には、作業をより効率的に管理するための多くの設定と機能が用意されています。その 1 つは、ニーズに応じてメールを分類できる並べ替えオプションです。このチュートリアルでは、Outlook の並べ替え機能を使用して、送信者、件名、日付、カテゴリ、サイズなどの基準に基づいてメールを整理する方法を学習します。これにより、重要な情報の処理と検索が容易になり、生産性が向上します。 Microsoft Outlook は、電子メールやカレンダーのスケジュールを簡単に一元管理できる強力なアプリケーションです。電子メールの送受信、整理が簡単にできるほか、内蔵のカレンダー機能により今後のイベントや予定を簡単に追跡できます。 Outlo の使い方

Python を使用した XML データのフィルタリングと並べ替えの実装 はじめに: XML は、データをタグと属性の形式で保存する、一般的に使用されるデータ交換形式です。 XML データを処理するとき、多くの場合、データのフィルタリングと並べ替えが必要になります。 Python には、XML データを処理するための便利なツールとライブラリが多数用意されています。この記事では、Python を使用して XML データをフィルタリングおよび並べ替える方法を紹介します。 XML ファイルの読み取り 始める前に、XML ファイルを読み取る必要があります。 Python には XML 処理ライブラリが多数ありますが、

PHP 開発: テーブル データのソート機能とページング機能を実装する方法 Web 開発では、大量のデータを処理するのが一般的なタスクです。大量のデータを表示する必要があるテーブルの場合、通常、優れたユーザー エクスペリエンスを提供し、システム パフォーマンスを最適化するために、データの並べ替え機能とページング機能を実装する必要があります。この記事では、PHP を使用してテーブル データのソート機能とページング機能を実装する方法と、具体的なコード例を紹介します。ソート機能はテーブルにソート機能を実装しており、ユーザーはさまざまなフィールドに従って昇順または降順でソートできます。以下は実装フォームです

PHP の array_unique() 関数は、配列から重複要素を削除するために使用されます。デフォルトでは、厳密な等価性 (===) が使用されます。カスタム比較関数を使用して重複排除の基準を指定できます。カスタム比較関数を作成し、重複排除の標準を指定します (たとえば、要素の長さに基づいて)。そのカスタム比較関数を array_unique() 関数の 3 番目のパラメーターとして渡します。指定された基準に基づいて要素を複製します。

この問題では、文字列が入力として与えられ、その文字列に出現する単語を辞書順に並べ替える必要があります。これを行うには、文字列内の各単語 (スペースで区切られている) に 1 から始まるインデックスを割り当て、ソートされたインデックスの形式で出力を取得します。 String={"Hello","World"}"Hello"=1 "World"=2 入力文字列内の単語は辞書編集順であるため、出力には「12」が出力されます。いくつかの入力/結果のシナリオを見てみましょう - 入力文字列内のすべての単語が同じであると仮定して、結果を見てみましょう - 入力:{"hello","hello","hello"}結果:3 取得された結果

私たちの仕事では、wps ソフトウェアをよく使用します。wps ソフトウェアではデータを処理する方法がたくさんあり、機能も非常に強力です。平均値や要約などを求める関数をよく使用します。統計データに使用できるメソッドは、WPS ソフトウェア ライブラリで誰でも利用できるように用意されています。以下では、WPS でスコアをソートする手順を紹介します。これを読んだ後、経験から学ぶことができます。 1. まず、ランク付けする必要があるテーブルを開きます。以下に示すように。 2. 次に、数式 =rank(B2, B2: B5, 0) を入力します。必ず 0 を入力してください。以下に示すように。 3. 数式を入力した後、コンピュータのキーボードの F4 キーを押すと、相対参照が絶対参照に変更されます。

Java の Arrays.sort() メソッドはカスタム コンパレータによって配列をどのようにソートしますか? Java では、Arrays.sort() メソッドは配列を並べ替えるのに非常に便利なメソッドです。デフォルトでは、このメソッドは昇順で並べ替えます。ただし、場合によっては、独自に定義したルールに従って配列を並べ替える必要があります。このとき、カスタムコンパレータ(Comparator)を使用する必要があります。カスタム コンパレータは、Comparator インターフェイスを実装するクラスです。
