ดังที่แสดงด้านล่าง:
// ---------- บางอัลกอริทึมการเรียงลำดับ var sort = {} sort.prototype = {// เรียงลำดับด้วยการเรียงลำดับระบบ: ฟังก์ชั่น (อาร์เรย์) {return array.sort (ฟังก์ชั่น (a, b) {return a-b;}); }, // bubblesort: ฟังก์ชั่น (อาร์เรย์) {var i = 0, len = array.length, j, d; สำหรับ (; i <len; i ++) {สำหรับ (j = 0; j <len; j ++) {if (array [i] <array [j]) {d = array [j]; อาร์เรย์ [j] = อาร์เรย์ [i]; อาร์เรย์ [i] = d; }}} return array; }, // sort Quicksort ด่วน: ฟังก์ชั่น (อาร์เรย์) {// var array = [8,4,6,2,7,9,3,3,5,74,5]; // var array = [0,1,2,44,4,324,5,65,6,6,34,4,5,6,2,43,5,62,62,43,5,1,1,51,56,76,76,7,7,2,1,1,45,45,4,77,77,77,5,51,51,51,51,51,5,5,51,5,5,5,5,5,5,5,5s var i = 0; var j = array.length - 1; var sort = function (i, j) {// เงื่อนไขสิ้นสุดถ้า (i == j) {return}; var key = array [i]; var tempi = i; // บันทึกตำแหน่งเริ่มต้น var tempj = j; // บันทึกตำแหน่งสิ้นสุดในขณะที่ (j> i) {// j << -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- หยุดพัก; }}}}} // ถ้าคีย์แรกที่ดึงมาเป็นหมายเลขที่เล็กที่สุดถ้า (tempi == i) {sort (++ i, tempj); กลับ ; } // ตำแหน่งว่างสุดท้ายถูกทิ้งไว้ที่คีย์อาร์เรย์ [i] = คีย์; // การเรียงลำดับแบบเรียกซ้ำ (Tempi, i); เรียงลำดับ (j, tempj); } sort (i, j); อาร์เรย์กลับ; }, // แทรกการเรียงลำดับแทรก: ฟังก์ชั่น (อาร์เรย์) {// http://baike.baidu.com/image/d57e99942da24e5dd21b7080 // http://baike.baidu.com/view/396887..htm // [0,1,2,44,4,324,5,65,6,6,6,34,4,5,6,2,43,5,62,62,43,5,1,1,51,56,76,76,7,7,2,1,1,45,4,6,77,77] var i = 1, j, temp, key, len = array.length; สำหรับ (; i <len; i ++) {temp = j = i; key = array [j]; ในขณะที่ (-j> -1) {if (array [j]> คีย์) {array [j+1] = array [j]; } else {break; }} array [j+1] = key; } return array; }, // Hill sort //jun.array.shellsort(jun.array.df(10000)); shellsort: ฟังก์ชั่น (อาร์เรย์) {// http://zh.wikipedia.org/zh/%E5%B8%8C%E5%B0%94%E6%8E%92%E5%BA%8F // var array = [13,14,94,33,82,25,59,94,65,23,45,27,73,25,39,10]; // var temparr = [1750, 701, 301, 132, 57, 23, 10, 4, 1]; // reverse () ดูอาร์เรย์ที่ดีที่สุดของขนาดขั้นตอนที่เล็กกว่า var temparr = [1031612713, 217378076, 45806244, 9651787, 2034035, 428481, 90358, 19001, 4025, 836, 182 i = 0; var temparrtemparrlength = temparr.length; var len = array.length; var len2 = parseint (len/2); สำหรับ (; i <temparrlength; i ++) {ถ้า (temparr [i]> len2) {ดำเนินการต่อ; } tempsort (temparr [i]); } // เรียงลำดับฟังก์ชั่นขั้นตอน tempsort (temp) {//console.log(temp) สถิติขนาดขั้นตอนที่ใช้ var i = 0, j = 0, f, tem, คีย์; var templen = len%temp> 0? ParseInt (Len/Temp) + 1: Len/Temp; สำหรับ (; i <temp; i ++) {// วนรอบคอลัมน์ในการหมุนสำหรับ (j = 1;/ * j <templen && */temp * j+i <len; j ++) {// วนรอบแถวของแต่ละคอลัมน์ key = array [f]; ในขณะที่ ((tem- = temp)> = 0) {// ค้นหาถ้า (อาร์เรย์ [tem]> คีย์) {array [tem+temp] = array [tem]; } else {break; }} array [tem + temp] = key; }}} return array; -การใช้งานอัลกอริทึมการเรียงลำดับที่หลากหลายข้างต้น (สรุป) ของ JS เป็นเนื้อหาทั้งหมดที่ใช้ร่วมกันโดยตัวแก้ไข ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น