w3resource

JavaScript Exercises: Find the first index that matches a given element

JavaScript Singly Linked List: Exercise-8 with Solution

Write a JavaScript program to find the first index that matches a given element. Return -1 for no matching.

Sample Solution:

JavaScript Code:

class Node {
    constructor(data) {
        this.data = data
        this.next = null                
    }
}
class SinglyLinkedList {
    constructor(Head = null) {
        this.Head = Head
    }
add(newNode){
    let node = this.Head;
    if(node==null){
        this.Head = newNode;
        return;
    }
    while (node.next) {
        node = node.next;
    }
    node.next = newNode;
} 
indexOf(data){
    let ind = -1;
    let node = this.Head;
    while(node){
        ++ind;
        if(node.data === data) return ind;
        node = node.next;
    }
    return -1;
}  
 displayList(){
    let node = this.Head;
    var str = ""
    while (node) {
        str += node.data + "->";
        node = node.next;
    }
    str += "NULL"
    console.log(str);  
  }
}
let numList = new SinglyLinkedList();
numList.add(new Node(12));
numList.add(new Node(13));
numList.add(new Node(14));
numList.add(new Node(15));
numList.add(new Node(14));
numList.displayList();
console.log("Find the first index that matches the value 14:")
console.log(numList.indexOf(14))
console.log("Find the first index that matches the value 5:")
console.log(numList.indexOf(5))


Sample Output:

12->13->14->15->14->NULL
Find the first index that matches the value 14:
2
Find the first index that matches the value 5:
-1

Flowchart:

Flowchart: JavaScript Exercises: Find the first index that matches a given element.

Live Demo:

See the Pen javascript-singly-linked-list-exercise-8 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Singly Linked List Previous: Get a node in an existing singly linked list.
Singly Linked List Next: Check whether a single linked list is empty or not.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.