我正在尝试在React中实现排序可视化工具。我有一个按钮,单击后会调用selectionSort()函数:
selectionSort() {
var arr = this.state;
console.log(arr);
var n = arr.length;
var i = 0;
var j = 0;
for (i = 0; i < n; ++i) {
var min = i;
for (j = i; j < n; ++j) {
if (arr[min] > arr[j]) {
min = j;
}
}
var temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
}
console.log("new array", arr);
}
但是,第二个console.log()应该赋予已排序的数组正确的权限吗?没有,我不知道发生了什么。
我认为这里没有问题,可以正常工作。
function selectionSort() {
var arr = [1,2,4,5,6,3,10,9];
console.log(arr);
var n = arr.length;
var i = 0;
var j = 0;
for (i = 0; i < n; ++i) {
var min = i;
for (j = i; j < n; ++j) {
if (arr[min] > arr[j]) {
min = j;
}
}
var temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
}
console.log("new array", arr);
}