這是我照著書上敲的歸并排序,可是控制臺輸出merg函數(shù)while判斷中的length為undefined function splitMergeSort(arr){ var len = arr.length; while(len == 1){ return arr; } var mid = Math.floor(len/2); var left = arr.slice(0, mid), right = arr.slice(mid, len); return splitMergeSort(merge(left),merge(right)) } //合并函數(shù) function merge(arr1,arr2){ var result = []; var l = 0; var r = 0; while(l<arr1.length && r<arr2.length){ if(arr1[l]<arr2[r]){ result.push(arr1[l++]) }else{ result.push(arr2[r++]) } } while(l<arr1.length){ result.push(arr1[l++]) } while(r<arr2.length){ result.push(arr2[r++]) } }
歸并排序問題,lenth為什么undefined
達令說
2018-11-15 16:19:07