-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
function swap (arr, n, m) {
[arr[n], arr[m]] = [arr[m], arr[n]]
}
function partion (a, l, r, p) {
swap(a, p, l)
let i = l, j = r, pivot = a[ l ]
while(i < j) {
while(a[j] >= pivot && i < j) {
j--
}
a[i] = a[j]
while(a[i] <= pivot && i < j) {
i++
}
a[j] = a[i]
}
a[i] = pivot
return i
}
var arr = [-1, -1, -1, -1, -1, -1, undefined, -1, -1, -1, -1]
var p = partion(arr,0,arr.length-1,0) // 执行完跟没执行一样,
根本原因是:
NaN >= -1 => false
NaN <= -1 => false
NaN == -1 => false
NaN == NaN => false
Metadata
Metadata
Assignees
Labels
No labels