Learn Basic Algorithmic Thinking by Building a Number Sorter - Step 38

Tell us what’s happening:

I tried different ways, but I’m still getting it wrong. Here are the following ways I tried: j = j + 1, array[j] = array[j + 1], array[j] = j + 1.

Your code so far

<!-- file: index.html -->

/* file: styles.css */

/* file: script.js */
// User Editable Region

const insertionSort = (array) => {
  for (let i = 1; i < array.length; i++) {
    const currValue = array[i];
    let j = i - 1;

    while (j >= 0 && array[j] > currValue) {
      let j = j + 1;
      j--;
    }
  }
}

// User Editable Region

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36

Challenge Information:

Learn Basic Algorithmic Thinking by Building a Number Sorter - Step 38

Using let here you’re trying to redeclare the variable j. Also, you shouldn’t be incrementing j, but assigning the array value at index j as the value of the next item in the array.

I tried array[j] = array[j + 1]. I think I got it right, but I got it wrong.

1 Like

Your assignment is just back-to-front now.

Now I got it, I should’ve switched the order.

2 Likes