# Suggested solution for Data Structures: Add Elements at a Specific Index in a Linked List

**URL:** <https://forum.freecodecamp.org/t/suggested-solution-for-data-structures-add-elements-at-a-specific-index-in-a-linked-list/436706>\
**Category:** freeCodeCamp Contributors\
**Tags:** contributing\
**Created:** [December 22, 2020, 9:01am UTC](https://forum.freecodecamp.org/t/suggested-solution-for-data-structures-add-elements-at-a-specific-index-in-a-linked-list/436706 "2020-12-22T09:01:24Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![cedricbdev](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/cedricbdev/32/194572_2.png) [@cedricbdev](https://forum.freecodecamp.org/u/cedricbdev)\
**Post date:** [December 22, 2020, 9:01am UTC](https://forum.freecodecamp.org/t/suggested-solution-for-data-structures-add-elements-at-a-specific-index-in-a-linked-list/436706/1 "2020-12-22T09:01:24Z")

</div>

**What is your hint or solution suggestion?**

> **Solution**
>
> ```auto
> 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++;
> };
> 
> this.addAt = (index, element) => {
> let node = new Node(element);
> let currentIndex = 0;
> let currentNode = head;
> if (index < 0 || index >= length) {
> return false;
> }
> if (index === 0) {
> head.next = head;
> head = node;
> } else {
> while (currentIndex < index) {
> currentNode = currentNode.next;
> currentIndex++;
> }
> currentNode.next = node;
> }
> length++;
> }
> }
> 
> ```

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

**Link to the challenge:**

> **[freeCodeCamp.org](https://www.freecodecamp.org/learn/coding-interview-prep/data-structures/add-elements-at-a-specific-index-in-a-linked-list)**
>
> Learn to Code — For Free

---

<div class="post-metadata">

**Author:** ![ILM](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/ilm/32/363239_2.png) [@ILM](https://forum.freecodecamp.org/u/ILM)\
**Post date:** [June 1, 2021, 6:32pm UTC](https://forum.freecodecamp.org/t/suggested-solution-for-data-structures-add-elements-at-a-specific-index-in-a-linked-list/436706/2 "2021-06-01T18:32:03Z")

</div>


