Help am I missing anything?

I don’t understand why its not paying, I added 0 to every living index

  **Your code so far**
function LinkedList() {
var length = 0;
var head = null;

var Node = function(element) {
  this.element = element;
  this.next = null;
};

this.size = function() {
  return length;
};

this.head = function() {
  return head;
};

this.add = function(element) {
  var node = new Node(element);
  if (head === null) {
    head = node;
  } else {
    var currentNode = head;

    while (currentNode.next) {
      currentNode = currentNode.next;
    }

    currentNode.next = node;
  }
  length++;
};

// Only change code below this line
this.addAt = (index, element) => {
  if (index < 0 || index >= length) {
    return false;
  }

  let node = head;
  if (index > 0) {
    let i = 0;
    while (i + 1 !== index) {
      node = node.next;
      i++;
    }
  }

  const newNode = new Node(element);
  newNode.next = node.next;

  if (index === 0) {
    head = newNode;
  } else {
    node.next = newNode;
  }

  length++;
};
// Only change code above this line
}
  **Your browser information:**

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15

Challenge: Add Elements at a Specific Index in a Linked List

Link to the challenge:

pay attention at this line

thanks, I changed it to “newNode.next = node;” and passed

By the way, even though the code is valid for passing the challenge, it still contains a semantic error. addAt() method doesn’t allow adding an element to the end of the list. Or as a special case, you can’t populate an empty list through addAt().

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.