-2

I wanna ascend this array below. [1, 2,3,5, 3, 2, 4,] to [1,2,2,3,3,4,5]

but my code below didn't back correctly answer. Could someone teach me how to sort array of numbers using javascript?

    var arr = [1, 2,3,5, 3, 2, 4,];

for (var i = 0; i < arr.length - 1; i++){
    var left = arr[i];
    var right = arr[i + 1];
    if (left > right) {
        arr[i + 1] = left;
        arr[i] = right;
    } 

}
console.log(arr);
drunkdolphin
  • 765
  • 1
  • 16
  • 46

1 Answers1

1

Here is bubble sort algorithm using only for-loop and while

const arr = [1, 2, 3, 5, 3, 2, 4];

let is_sorted = false;

while (!is_sorted) {
  is_sorted = true;
  for (let i = 1; i < arr.length; i++) {
    if (arr[i - 1] > arr[i]) {
      // swap
      const temp = arr[i - 1];
      arr[i - 1] = arr[i];
      arr[i] = temp;
      is_sorted = false;
    }
  }
}

console.log(arr);
Siva K V
  • 10,561
  • 2
  • 16
  • 29