口碑好的移动网站建设,北京 公司网站制作,新津县网站建设,沈阳商城网站开发把字符串以字典的展示形式排序#xff0c;如把字符串abc,bad,aade,bdca排列成aade,abc,bad,bdca。 1.使用冒泡排序 (1) 相邻两数据两两比较#xff0c;较大的放到后面#xff0c;直到把最大的字符串放在最后一个位置。 (2) 从头开始再进行相邻数据两两比较#xff0c;较大的…把字符串以字典的展示形式排序如把字符串abc,bad,aade,bdca排列成aade,abc,bad,bdca。 1.使用冒泡排序 (1) 相邻两数据两两比较较大的放到后面直到把最大的字符串放在最后一个位置。 (2) 从头开始再进行相邻数据两两比较较大的放到后面直到把第二大的字符串放在倒数第二个位置。 (3) 依次类推...字符串从小到大依次排列。 var arrStr [abc,bad,aade,bdca];Array.prototype.toSortStr function(){for(var i 0;i this.length - 1;i){for(var j 0;j this.length - i - 1; j){if(strCompare(this[j],this[j1])){var temp this[j];this[j] this[j1];this[j1] temp;}}}}function strCompare(str1,str2){//str1大于str2返回truevar minLen,strLen1 str1.length,strLen2 str2.length;(strLen1 strLen2) ? minLen strLen1 : minLen strLen2;for(var i 0; i minLen - 1; i){if(str1.charAt(i) str2.charAt(i)){return true;}if(str1.charAt(i) str2.charAt(i)){return false;}}return false;}arrStr.toSortStr(); 2.使用快速排序 (1) 以第一个元素为基准把数组分为两部分基准左边的字符串小于基准基准右边的字符串大于基准。 (2) 再把基准的两边的数组元素分别按照1处理。 (3) 依次类推进行递归...直到字符串顺序排列。 var arrStr [abc,bad,aade,bdca];function quickSort(arr,low,height){if(low height){return;}var pivot arr[low],i low,j height;while(i j){while(i j strCompare(arr[j],pivot)){j--;}arr[i] arr[j];while(i j strCompare(pivot,arr[i])){i;}arr[j] arr[i];}arr[i] pivot;quickSort(arrStr,low,i - 1);quickSort(arrStr,i 1,height);}function strCompare(str1,str2){//str1大于str2返回truevar minLen,strLen1 str1.length,strLen2 str2.length;(strLen1 strLen2) ? minLen strLen1 : minLen strLen2;for(var i 0; i minLen - 1; i){if(str1.charAt(i) str2.charAt(i)){return true;}if(str1.charAt(i) str2.charAt(i)){return false;}}return false;}quickSort(arrStr,0,arrStr.length-1); 3.使用数组的sort方法 var arrStr [abc,bad,aade,bdca];arrStr.sort(function(str1,str2){var minLen,strLen1 str1.length,strLen2 str2.length;(strLen1 strLen2) ? minLen strLen1 : minLen strLen2;for(var i 0; i minLen - 1; i){if(str1.charAt(i) str2.charAt(i)){return 1;}if(str1.charAt(i) str2.charAt(i)){return -1;}}return -1;}) 转载于:https://www.cnblogs.com/fe-huahai/p/5717799.html