簡単な説明: JavaScript を使用して一連の数値を並べ替える js で呼び出す直接の数値比較関数はないため、簡単な並べ替えを作成しました 知識ポイント: 1.正負の数値の文字列を抽出する正規表現 2.str を数値に変換してリストに戻す 3.Sort クラスの宣言と定義 4.コンストラクターとメンバー関数の定義 メソッド (プロトタイプ) 5. クイック ソート アルゴリズム コード: コードをコピー コードは次のとおりです: . クイックソート <br> /*************入力から数値を取得********** */ <br>function getNumList(){ <br>var result = ""; <br>var nums = document.getElementById('numbers').value; <br>var reg = /( [-][1- 9][0-9]*)|([1-9][0-9]*)/g; <br>var numStrList = nums.match(reg); = 新しい Array(); <br>if(numStrList != null){ <br>for(var i = 0;i < numStrList.length;i ){ <BR>var intNumber = parseInt(numStrList[i]) ; <BR>numList.<BR>} <BR>} <BR><BR>/*****************主要*************************/ <BR> function MainProgram(numList){ <br>var sort = new Sort(numList); <br>varsortedList == null) <BR>document.getElementById('result' ).innerHTML = "間違った入力"; <BR>else{ <BR>document.getElementById('result').innerHTML =sortedList.join(','); <BR><BR>/**************ソートクラス***********************/ <BR>var Sort = function(list){ <BR>this.resultList = <BR>}; <BR><br>Sort.prototype.Partition = function(start, end){ <br> varbaseValue = this.resultList[start]; <BR>varbasePos = start; <BR>for(var j = start 1;j <= end;j ){ <BR>if(baseValue > this.resultList[ j]){ <br>basePos; <br>this.Swap(basePos,j); <br>// ベース値を移動正しい場所に移動します。前は小さく、後ろは大きくなります。 end){ <br> if(start < end){ <BR>varbasePos = this.Partition(start,end); <BR>this.QuickSort(start,basePos - 1); BasePos 1, end); <BR><BR>Sort.prototype.Swap = function(pos1,pos2){ <BR>var temp = this.resultList[pos1]; this.resultList[pos1] = this.resultList[pos2]; <BR>this.resultList[pos2] = temp; <BR><BR>Sort.prototype.getSortedList = function(){ <BR>this .QuickSort(0,this .resultList.length - 1); <BR><br> ;body> 入力タイプ = "テキスト" 値 = '' /> <入力タイプ = 'ボタン' 値 = "exec" onclick = 'getNumList()'/> ソートされたリスト: 出力: 🎜>