Specialist Programmer

20+ Specialist Programmer Interview Questions and Answers for Freshers

Updated 2 Nov 2024

Q1. 1. Find the first occurrence of the target value in a sorted array. (Duplicates are allowed)

Ans.

Find the first occurrence of target value in a sorted array with duplicates.

  • Use binary search to find the target value.

  • If found, check if the previous element is also the target value.

  • If not, return the index of the target value.

  • If yes, continue binary search on the left subarray.

Q2. 2. Find the maximum subarray sum given an array with positive and negative integers.

Ans.

Find the maximum subarray sum in an array with positive and negative integers.

  • Use Kadane's algorithm to find the maximum subarray sum.

  • Initialize two variables, one for current maximum and one for global maximum.

  • Iterate through the array and update the variables accordingly.

  • Return the global maximum.

  • Example: [-2, 1, -3, 4, -1, 2, 1, -5, 4] returns 6 (subarray [4, -1, 2, 1])

Q3. Which are the process scheduling algorithms and explain each algorithm.

Ans.

Process scheduling algorithms determine the order in which processes are executed by the CPU.

  • First Come First Serve (FCFS) - Processes are executed in the order they arrive.

  • Shortest Job Next (SJN) - Process with the shortest burst time is executed next.

  • Round Robin (RR) - Each process is assigned a fixed time slice for execution.

  • Priority Scheduling - Processes are executed based on priority levels assigned to them.

  • Multi-Level Queue Scheduling - Processes are divided into diffe...read more

Q4. What is deadlock in OS & how it overcome?

Ans.

Deadlock in OS occurs when two or more processes are unable to proceed because each is waiting for the other to release a resource.

  • Deadlock happens when processes have acquired resources but are waiting for additional resources that are held by other processes.

  • Four conditions must hold for deadlock to occur: mutual exclusion, hold and wait, no preemption, and circular wait.

  • Deadlock can be prevented by using techniques like resource allocation graphs, deadlock detection algori...read more

Are these interview questions helpful?

Q5. Write a SQL query to print n'th highest salary with full details

Ans.

SQL query to retrieve the n'th highest salary with full details

  • Use the ORDER BY clause to sort salaries in descending order

  • Use the LIMIT clause to retrieve the n'th highest salary

  • Join with the employee table to get full details

Q6. What are the joins in DBMS and explain each join

Ans.

Joins in DBMS are used to combine rows from two or more tables based on a related column between them.

  • Inner Join: Returns rows when there is at least one match in both tables.

  • Left Join: Returns all rows from the left table and the matched rows from the right table.

  • Right Join: Returns all rows from the right table and the matched rows from the left table.

  • Full Outer Join: Returns rows when there is a match in one of the tables.

  • Self Join: Joining a table with itself to combine r...read more

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q7. What is inheritance and explain each type

Ans.

Inheritance is a concept in object-oriented programming where a class inherits properties and behaviors from another class.

  • Types of inheritance: single inheritance, multiple inheritance, multilevel inheritance, hierarchical inheritance, hybrid inheritance

  • Single inheritance: a class inherits from only one base class

  • Multiple inheritance: a class inherits from multiple base classes

  • Multilevel inheritance: a class inherits from a class which in turn inherits from another class

  • Hier...read more

Q8. What are late binding and early binding?

Ans.

Late binding and early binding are concepts in programming related to when the binding of a method to its implementation occurs.

  • Early binding refers to the process of linking a method call to the method implementation at compile time.

  • Late binding refers to the process of linking a method call to the method implementation at runtime.

  • Early binding is also known as static binding, while late binding is also known as dynamic binding.

  • Late binding allows for more flexibility and ex...read more

Specialist Programmer Jobs

Power Programmer - Specialist Programmer .NET Full Stack 3-8 years
Infosys Limited
3.7
Bangalore / Bengaluru
Power Programmer - Specialist Programmer Data Engineering 3-8 years
Infosys Limited
3.7
Bangalore / Bengaluru
Power Programmer - Specialist Programmer Java Full Stack 3-8 years
Infosys Limited
3.7
Bangalore / Bengaluru

Q9. Memory sorting Code with given 3 RAMs and quantity of data present in them.

Ans.

Sorting code for given 3 RAMs and data quantity

  • Determine the size of each RAM and the quantity of data in them

  • Choose a sorting algorithm based on the size of data and available RAM

  • Divide the data into chunks that can fit into the available RAM

  • Sort each chunk using the chosen algorithm

  • Merge the sorted chunks into a single sorted list

Q10. Write a code to convert camel casing to snake casing and vice versa.

Ans.

Code to convert camel casing to snake casing and vice versa.

  • For camel to snake case, iterate through the string and add '_' before every uppercase letter except the first one.

  • For snake to camel case, iterate through the string and remove '_' and capitalize the letter after it.

  • Handle edge cases like consecutive uppercase letters or underscores in the input string.

  • Use built-in string functions like split(), join(), and replace() for efficient implementation.

Q11. Write a program to print frequencies of elementsof an array.

Ans.

Program to print frequencies of elements in an array.

  • Create a dictionary to store the frequency of each element.

  • Iterate through the array and update the frequency in the dictionary.

  • Print the dictionary to display the frequency of each element.

Q12. Swap two numbers without using third variable?

Ans.

To swap two numbers without using third variable, use arithmetic operations.

  • Add the two numbers and store the result in the first variable.

  • Subtract the second variable from the sum and store the result in the second variable.

  • Subtract the second variable from the original sum and store the result in the first variable.

Q13. What is difference between javascript and typescript

Ans.

JavaScript is a dynamic scripting language, while TypeScript is a statically typed superset of JavaScript.

  • JavaScript is dynamically typed, while TypeScript is statically typed.

  • TypeScript supports type checking at compile time, while JavaScript does not.

  • TypeScript allows for the use of interfaces and advanced OOP features, while JavaScript does not.

  • TypeScript code needs to be transpiled to JavaScript before it can be executed in a browser.

Q14. Given a list of natural numbers, find the largest increasing subsequence from it

Ans.

Find the largest increasing subsequence from a list of natural numbers

  • Use dynamic programming to keep track of the longest increasing subsequence ending at each index

  • Iterate through the list and update the longest increasing subsequence for each element

  • Return the maximum length of the increasing subsequence

Q15. What is immutability in Python?

Ans.

Immutability in Python refers to the property of objects that cannot be changed after creation.

  • Immutable objects cannot be modified once created

  • Immutable objects include numbers, strings, and tuples

  • Immutable objects are useful for caching and as dictionary keys

Q16. Compare time complexityand space complexity of array list and linked list

Ans.

Array list has O(1) time complexity for accessing elements but O(n) for insertion/deletion, while linked list has O(n) time complexity for accessing elements but O(1) for insertion/deletion.

  • Array list has constant time complexity O(1) for accessing elements by index, but linear time complexity O(n) for insertion/deletion operations due to shifting elements.

  • Linked list has linear time complexity O(n) for accessing elements as it requires traversing from the head node, but cons...read more

Q17. What is stack data structure?

Ans.

Stack is a linear data structure that follows Last In First Out (LIFO) principle.

  • Elements are added and removed from the top of the stack.

  • Push operation adds an element to the top of the stack.

  • Pop operation removes the top element from the stack.

  • Peek operation returns the top element without removing it.

  • Examples: function call stack, undo-redo operations in text editors.

Q18. What is mutable objects in python

Ans.

Mutable objects in Python are objects whose value can be changed after creation.

  • Lists, dictionaries, and sets are examples of mutable objects in Python.

  • Changes made to mutable objects directly affect the original object.

  • Mutable objects can be modified in place using methods like append(), update(), and remove().

Q19. DB design regarding ticket booking of airways

Ans.

Design a database for airways ticket booking system

  • Create tables for flights, passengers, bookings, and seats

  • Use foreign keys to establish relationships between tables

  • Include attributes like flight number, passenger name, seat number, etc.

  • Implement constraints to ensure data integrity

  • Consider indexing for faster retrieval of data

Q20. Implement phone directory using Data structures

Ans.

Phone directory can be implemented using an array of strings.

  • Use an array of strings to store phone numbers with corresponding names

  • Implement functions to add, delete, search, and display entries in the phone directory

  • Consider using a hash table for faster search operations

Q21. What is machine learning

Ans.

Machine learning is a branch of artificial intelligence that involves developing algorithms and models that enable computers to learn from and make predictions or decisions based on data.

  • Machine learning involves training algorithms to learn patterns from data and make predictions or decisions without being explicitly programmed.

  • It is used in various applications such as image recognition, natural language processing, recommendation systems, and autonomous vehicles.

  • Examples o...read more

Frequently asked in,

Q22. remove duplicate from sorted array

Ans.

Use two pointers to remove duplicates from a sorted array of strings.

  • Initialize two pointers, one for the current element and one for the next unique element.

  • Compare current element with next element, if same, move next pointer until a different element is found.

  • Replace duplicate elements with unique elements found by next pointer.

Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Top Interview Questions for Specialist Programmer Related Skills

Interview experiences of popular companies

3.7
 • 7.3k Interviews
3.7
 • 907 Interviews
3.8
 • 492 Interviews
3.3
 • 165 Interviews
View all

Calculate your in-hand salary

Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary

Specialist Programmer Interview Questions
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
65 L+

Reviews

4 L+

Interviews

4 Cr+

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