Add office photos
Employer?
Claim Account for FREE

RaRa Delivery

3.5
based on 4 Reviews
Filter interviews by

10+ M O J & Associates Interview Questions and Answers

Updated 5 Feb 2024

Q1. DSA and Language Questions: 1. Difference between Arrays and ArrayList in Java. 2. Queue Implementation using Linked List. 3. BST- How would you fill a BST with a sorted array. 4. Random pointer linked-list clo...

read more
Ans.

A list of technical questions related to data structures and algorithms in Java.

  • Arrays are fixed in size while ArrayLists can dynamically grow and shrink.

  • Queue can be implemented using a linked list by adding elements to the end and removing from the front.

  • To fill a BST with a sorted array, we can recursively divide the array in half and add the middle element as the root.

  • Random pointer linked-list clone can be done by creating a new node for each node in the original list an...read more

Add your answer

Q2. During Binary search, what if negative elements were there in an Array as well how would you search a specific element and time complexity for the same.

Ans.

Negative elements in array won't affect binary search. Time complexity remains O(log n).

  • Binary search works by dividing the array into two halves and comparing the middle element with the target element.

  • If the middle element is greater than the target, search in the left half, else search in the right half.

  • Negative elements won't affect this process as long as the array is sorted.

  • Time complexity remains O(log n) as the search space is halved in each iteration.

Add your answer

Q3. Two uniform wires totally burnt in a total of 30 minutes. How will you measure 45 minutes?

Ans.

Burn one wire at both ends and the other wire at one end. When the first wire burns out, light the other end of the second wire.

  • Burn one wire at both ends and the other wire at one end

  • When the first wire burns out, light the other end of the second wire

  • The second wire will burn for 15 minutes, totaling 45 minutes

Add your answer

Q4. BST- How will you fill a BST with a sorted Array?

Ans.

To fill a BST with a sorted array, we can use a recursive approach.

  • Find the middle element of the array and make it the root of the BST

  • Recursively construct the left subtree using the left half of the array

  • Recursively construct the right subtree using the right half of the array

Add your answer
Discover M O J & Associates interview dos and don'ts from real experiences

Q5. How does Binary search be done in a rotated array?

Ans.

Binary search in a rotated array can be done by finding the pivot point and then applying binary search on the two subarrays.

  • Find the pivot point by comparing mid element with the first and last elements of the array

  • Apply binary search on the two subarrays formed by the pivot point

  • Repeat until the element is found or the subarray is empty

  • Time complexity is O(log n)

  • Example: [4,5,6,7,0,1,2], target=0. Pivot point is 3. Binary search on [4,5,6,7] and [0,1,2]

Add your answer

Q6. Print Fibonacci numbers until the nth term using only recursion (no loop allowed)

Ans.

Printing Fibonacci numbers using recursion only

  • Define a recursive function that takes two arguments, n and a list to store the Fibonacci sequence

  • Base case: if n is 0 or 1, return the list

  • Recursive case: append the sum of the last two elements in the list to the list and call the function with n-1

  • Call the function with n and an empty list to start the sequence

  • Print the list of Fibonacci numbers

Add your answer
Are these interview questions helpful?

Q7. Puzzles: 1. Plane and Fuel Puzzle 2. Two uniform wires completely burned in a total of 30 mins. How will you measure 45 mins

Ans.

Answering two puzzles - Plane and Fuel, and Two Wires Burned

  • For the Plane and Fuel puzzle, calculate the amount of fuel needed for half the journey and then double it

  • For the Two Wires Burned puzzle, light one wire at both ends and the other wire at one end only after the first wire has burned out halfway

  • Both puzzles require creative thinking and problem-solving skills

Add your answer

Q8. What is the fastest sorting algorithm?

Ans.

The fastest sorting algorithm is QuickSort.

  • QuickSort has an average time complexity of O(n log n).

  • It is a divide and conquer algorithm that recursively partitions the array.

  • It is widely used in practice and has many variations such as randomized QuickSort.

  • Other fast sorting algorithms include MergeSort and HeapSort.

Add your answer
Share interview questions and help millions of jobseekers 🌟

Q9. Difference between Arrays & ArrayLists in Java?

Ans.

Arrays are fixed in size while ArrayLists can dynamically grow or shrink.

  • Arrays are of fixed size while ArrayLists can be resized dynamically.

  • Arrays can hold primitive data types while ArrayLists can only hold objects.

  • Arrays are faster than ArrayLists for accessing elements.

  • ArrayLists have built-in methods for adding, removing, and sorting elements.

  • Example: int[] arr = new int[5]; ArrayList list = new ArrayList<>();

Add your answer

Q10. OOPS: 1. Polymorphism with example 2. Overloading vs overriding

Ans.

Polymorphism is the ability of an object to take on many forms. Overloading is having multiple methods with the same name but different parameters. Overriding is having a method in a subclass with the same name and parameters as a method in the superclass.

  • Polymorphism allows objects to be treated as if they are of different types. For example, a parent class reference can be used to refer to a child class object.

  • Overloading is used to provide different implementations of a me...read more

Add your answer

Q11. Clone a linked list with a random pointer.

Ans.

Clone a linked list with a random pointer.

  • Create a new node for each node in the original list

  • Store the mapping of original node to new node in a hash table

  • Set the random pointer of each new node based on the mapping

  • Traverse the original list and the new list simultaneously to set the next pointers

Add your answer

Q12. Fibonacci number generation using recursion.

Ans.

Fibonacci number generation using recursion

  • Define a function that takes an integer as input

  • If the input is 0 or 1, return the input

  • Else, return the sum of the function called with input-1 and input-2

  • Call the function with the desired input

Add your answer

Q13. Queue Implementation using Linked List?

Ans.

Queue can be implemented using a singly linked list where insertion happens at the tail and deletion at the head.

  • Create a Node class with data and next pointer

  • Create a Queue class with head and tail pointers

  • Enqueue operation: create a new node and add it to the tail of the list

  • Dequeue operation: remove the node at the head of the list and update the head pointer

  • Peek operation: return the data at the head of the list without removing it

Add your answer

Q14. Show the Array Rotation

Ans.

Array rotation is the process of shifting the elements of an array to the left or right.

  • To rotate an array to the left, move the first element to the end of the array and shift the remaining elements to the left.

  • To rotate an array to the right, move the last element to the beginning of the array and shift the remaining elements to the right.

  • The number of rotations can be specified by the user.

  • Example: If the array is [1, 2, 3, 4, 5] and we want to rotate it to the left by 2 p...read more

Add your answer

Q15. Show reflection in java.

Ans.

Reflection in Java allows inspection and modification of runtime behavior of a program.

  • Reflection is achieved through classes in the java.lang.reflect package.

  • It allows access to class information, constructors, methods, and fields at runtime.

  • Reflection can be used to create new objects, invoke methods, and access or modify fields.

  • Example: Class c = Class.forName("java.lang.String");

  • Example: Method m = c.getDeclaredMethod("substring", int.class);

Add your answer

Q16. Print pair with given sum.

Ans.

Given an array of integers and a target sum, find a pair of integers that add up to the target sum.

  • Create a hash table to store the difference between the target sum and each element in the array

  • Iterate through the array and check if the current element is present in the hash table

  • If it is, return the current element and its corresponding hash table value as the pair that adds up to the target sum

  • If no such pair is found, return null or an empty array

Add your answer

Q17. Polymorphism with Example

Ans.

Polymorphism is the ability of an object to take on many forms. It allows objects of different classes to be treated as if they were of the same class.

  • Polymorphism is achieved through method overriding and method overloading.

  • Method overriding is when a subclass provides its own implementation of a method that is already provided by its parent class.

  • Method overloading is when a class has two or more methods with the same name but different parameters.

  • Example of polymorphism: A...read more

Add your answer

Q18. Overloading vs Overriding

Ans.

Overloading is having multiple methods with the same name but different parameters. Overriding is having a method in the subclass with the same name and parameters as in the superclass.

  • Overloading is compile-time polymorphism while overriding is runtime polymorphism.

  • Overloading is used to provide different ways of calling the same method while overriding is used to provide a specific implementation of a method in the subclass.

  • Overloading is achieved within the same class whil...read more

Add your answer
Contribute & help others!
Write a review
Share interview
Contribute salary
Add office photos
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Top Sde1 Interview Questions from Similar Companies

4.1
 • 38 Interview Questions
4.2
 • 11 Interview Questions
View all
Share an Interview
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
70 Lakh+

Reviews

5 Lakh+

Interviews

4 Crore+

Salaries

1 Cr+

Users/Month

Contribute to help millions
Get AmbitionBox app

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter