Table of contents
1.
Introduction
2.
Roles Offered by Tiger Analytics 
3.
Tiger Analytics Interview Questions For Freshers
3.1.
1. What is oops? 
3.2.
2. What are the main features of oops? 
3.3.
3. What is a superclass? 
3.4.
4.  Why is Java a platform-independent language?
3.5.
5. What do you mean by local and instance variables?
3.6.
6. What is the difference between the equals() function and the equality operator (==) in Java? 
3.7.
7. What is the space and time complexity of this function? 
3.8.
8. What do you mean by asymptotic analysis of an algorithm? 
3.9.
9. How to handle HashMap collisions in Java? 
4.
Tiger Analytics Interview Questions For Intermediate
4.1.
10. What are modules and packages in python?
4.1.1.
2. What is __init__? 
4.2.
11. What is the algorithm for the in-order traversal of a binary tree?
4.3.
12. What is Priority Queue? Write some its applications. 
4.4.
13. What are pickling and unpickling?
4.5.
14. What are pure virtual Functions?  
4.6.
15. What do you understand by garbage collection in oops world?  
4.7.
16. What is the time complexity of this function? 
4.8.
18. What are B-trees Data structures? 
4.9.
Tiger Analytics Interview Questions For Advanced
4.10.
19. Explain how the file is removed from Python. 
4.11.
20. Explain this Statement “A single try block and multiple catch blocks can co-exist in a Java Program”?   
4.12.
21. Write the syntax of writing the ternary Operators in python. 
4.13.
22. What are lambda functions in python? 
4.14.
23. What is an AVL TREE? 
4.15.
24. Write the program to reverse the string in java? 
4.16.
25. Write a program to check whether two strings are anagrams. 
4.17.
26. Write a program to implement topoSort in the graph.
4.18.
27. Write a python program for the triangle? 
5.
Conclusion
Last Updated: Jun 21, 2024
Medium

Tiger Analytics Interview Questions For Freshers

Career growth poll
Do you think IIT Guwahati certified course can help you in your career?

Introduction

Tiger Analytics is a leader in using AI and analytics to tackle some of the most challenging issues facing enterprises around the world. It creates customized solutions for multiple Fortune 500 firms powered by technology and data. They employ many remote workers worldwide and have offices in numerous US, UK, India, and Singapore cities. 

Tiger analytics interview questions

Tiger Analytics has won numerous accolades, including being named one of the fastest-growing tech businesses by Inc. and the Financial Times and being recognized as a Leader by Forrester Research. They frequently appear on respected lists of "Best Analytics Firms." 

Tiger Analytics is happy to provide more information if you're interested in learning more about job opportunities with Tiger. You'll have fun learning how to create systems and working with the finest in the business.

Click on the following link to read further: Java OOPs Interview Questions

Roles Offered by Tiger Analytics 

Before discussing the tiger analytics interview questions for freshers, let’s first discuss what are the different roles offered by the tiger analytics. 

  • Data Analyst: Data analysts are responsible for many activities, such as processing volumes and visualizing data. They occasionally need to run queries against the databases. Optimization is one of a data analyst's most crucial talents. This is because they must develop and alter algorithms that can be utilized to extract data without tainting it from some of the most extensive datasets.
     
  • Data Engineers: To enable data scientists to execute their algorithms on secure, highly optimized data platforms, data engineers develop and test scalable Big Data ecosystems for enterprises. To increase the effectiveness of the databases, data engineers also upgrade or replace older versions of the existing systems.
     
  • Database Administrators: The duties of a database administrator go without saying; they are in charge of ensuring that all databases within an organization are operating correctly and, by employee needs, either grant or revoke access to databases employees. Additionally, they are in charge of database backups and recoveries.
     
  • Machine Learning Engineer: Engineers skilled in machine learning are in high demand today. The job profile does have its difficulties, though. Machine learning engineers are expected to perform A/B testing, build data pipelines, and implement standard machine learning algorithms such as classification, clustering, etc., in addition to having in-depth knowledge of some of the most powerful technologies like SQL, REST APIs, etc.
     
  • Data Scientist: Data scientists must be familiar with business challenges to provide the best solutions through data processing and analysis. For instance, they must conduct predictive research and carefully comb through "unstructured/disorganized" data to provide helpful information. To help businesses make better decisions, they can also do this by spotting trends and patterns. 
     
  • Data Architect: The blueprints for data management are developed by a data architect, allowing for simple database integration, centralization, and best-practice security protection. Additionally, they guarantee that the data engineers have the best equipment and setups. 

Tiger Analytics Interview Questions For Freshers

The tiger analytics interview questions for freshers are generally divided into three sections, i.e., Aptitude, Computer Fundamentals, and coding. The aptitude test's syllabus is as follows:

  • Probability is a topic of utmost importance; it will be covered in most questions.
     
  • Combination and Permutation
     
  • Work and time, height and distance
     
  • The questions in geometry are simple; you don't need to practice them thoroughly; just taking a quick look at some formulas will be very beneficial.

The Questions asked in the tiger analytics interview for freshers from computer Fundamentals are from OOPs, Java, Time complexity, and pseudo codes. You need to prepare well in data structures and algorithms for the coding part. 

1. What is oops? 

Object-oriented programming allows programmers to represent real-world situations and objects. An object is something that has states and behaviors. States reflect an entity's characteristics or data, whereas methods define an item's behaviors. Students, employees, books, and other things are objects. These things communicate with one another by sending messages. A class will serve as a blueprint for creating objects. To create objects, a type is necessary. For instance, there must be an Employee class to create an Employee object. 

2. What are the main features of oops? 

Following are some of the characteristics of OOPs :

  • OOP allows you to specify the parameters of each piece of data by combining the code into a single unit. Encapsulation is the process of grouping data into a single unit.
     
  • You can generalize your object types and make your application easier to use by using classes. We refer to this as an abstraction.
     
  • More code can be reused when a class can inherit traits and behaviors from other courses.
     
  • With the aid of polymorphism, numerous objects can be produced from a single, flexible code class.

3. What is a superclass? 

A class from which a subclass or child class is derived is known as a superclass. A superclass is also known as a base class or parent class. For instance, if the class Student is a descendant of the Person class, Person will be referred to as the superclass. A class that serves as a parent to another class or class is known as a superclass or base class. For instance, the class Bike is a superclass of the class Vehicle.

4.  Why is Java a platform-independent language?

The Java language was designed to not rely on any hardware or software because this compiler compiles the code and then converts to platform-independent byte code that can be run on multiple systems. Installing a runtime environment (JRE) on the machine is the only prerequisite for that byte code to run.

5. What do you mean by local and instance variables?

The variables that all methods in the class can access are known as instance variables. Both inside the course and outside the methods, they are declared. These variables are inextricably linked to the Object they describe, describing its characteristics.

Every Object in the class will have a copy of the variables to use. Only that instance will be affected if any changes are made to these variables; all other class instances remain unaffected.

Example: 

class Codere{
public String CoderName;
public double CoderSpeed;
public int CoderAge;
}


Local variables are variables that can only be accessed inside a block, function, or function Object () { [native code] }. The variable can only be used within the block scope. When a local variable is declared inside a method, the other techniques in the class are unaware of it.  

Example: 

public void Coder() {
String coderName;
double coderSpeed;
int coderAge;
}

6. What is the difference between the equals() function and the equality operator (==) in Java? 

We are already familiar with the equals sign (==). That this is how we compared the values' equality. However, when we discuss the language of object-oriented programming, we deal with values represented by objects. Additionally, this Object could have several forms of data. The (==) operator cannot be used in this situation. Therefore, we must use the.equals() function.The fundamental functionality of [(==) and. equals()] is the same, which is to compare the values, but the secondary functionality is different.

7. What is the space and time complexity of this function? 

int a = 0, b = 0;
for (i = 0; i < N; i++) {
    a = a + rand();
}
for (j = 0; j < M; j++) {    b = b + rand();
}


The first loop is O(N), whereas the second loop is O. (M). N and M are independent variables. Thus we need to find out which word is the leading one. Consequently, the given issue's temporal complexity will be O(N+M). The size of the variables is independent of the quantity of input,  so space complexity will always be constant or O(1).

8. What do you mean by asymptotic analysis of an algorithm? 

The runtime capacity of an algorithm is determined by its asymptotic analysis in accordance with its mathematical bounds. The best case (Omega Notation), average case (Theta Notation), and worst case (Big Oh Notation, O) performance of an algorithm may all be expressed using asymptotic analysis. 

Must Read: Embedded Interview Questions

9. How to handle HashMap collisions in Java? 

  • Java.util.HashMap class has a chaining strategy to deal with collisions. A linked list is kept in a bucket of the key as a chain with the current value in chaining if new importance with the same key is tried to be pushed.
     
  • In the worst situation, all keys can have the same hashcode, which means the hash table will change into a linked list. Due to the structure of the linked list in this scenario, seeking a value will require O(n) complexity instead of O(1) time. As a result, caution must be given while choosing a hashing algorithm.

Tiger Analytics Interview Questions For Intermediate

10. What are modules and packages in python?

  • Modules: In general, modules are just Python files with a.py suffixes that include a specified and implemented collection of functions, classes, or variables. The import statement may be used to import and initialize them once. Use from foo import bar to import the necessary courses or methods if just partial functionality is required.
  • Packages: The module namespace can be hierarchically organized using boxes and dot notation. Similar to how modules help prevent name conflicts between global variables, packages do the same for name conflicts between modules.

Since it uses the system's built-in file structure, creating a package is simple. Place the modules in a folder; the folder name will serve as the package name. When importing a module or its contents from this package, the module name must come before the package name, separated by a dot.

2. What is __init__? 

When a new object or instance is created, the function Object()  method __init__ is automatically called to allocate memory. Every class has an associated __init__ method. It helps separate local variables from a class's ways and attributes.  

# class definition
class Student:
   def __init__(self, hname, lname, section, age):
       self.firstn = hname
       self.lastn = Inname
       self.section = section
       self.age = age
# creating a new object
ninja1 = Student("Coding", "Ninjas", A, "6")

11. What is the algorithm for the in-order traversal of a binary tree?

Algorithm   

  • Start traversing from the left subtree, i.e., call Inorder(left->subtree)
  • Visit the root.
  • Then Start traversing the right subtree, i.e., call Inorder(right->subtree)

12. What is Priority Queue? Write some its applications. 

A Priority Queue is like a queue in that each element has a priority value. The priority of the elements in the priority queue determines the order in which they are served (i.e., the order in which they are removed). The elements are served in the order they appear in the queue if they have the same priority.  

Some of its applications are:

  1. Used in graph algorithms like Prim's Minimum spanning tree, Dijkstra, etc.
  2. Used to find kth Largest/ Smallest Element 

13. What are pickling and unpickling?

Serialization is a feature that the Python library comes with by default. An object is "serialized" when it is converted into a format that can be stored in order to later be "deserialized" and returned to its original state. The pickle module is used in this condition.  

Pickling: Python's serialization procedure is known as pickling. In Python, any object can be serialized into a byte stream and stored in memory as a file. Although pickling is a compact process, pickled objects can be compressed even more. Pickle also maintains a list of the objects it has serialized, and the serialization is portable between versions.

Pickle.dump() is used for the above process. 

Unpickling: The exact opposite of pickling is unpickling. After deserializing the byte stream, it loads the object into memory to recreate the file objects.

Pickle is the function used in the above process.

14. What are pure virtual Functions?  

A function whose implementations are not provided in the base class and only a declaration is provided is a pure virtual function or method. The derived class may contain the implementation code for the pure virtual function; otherwise, the derived class will also be regarded as an abstract Class. Pure virtual functions are contained in an abstract class. 

15. What do you understand by garbage collection in oops world?  

Programming languages like C# and Java include the memory recovery technique known as garbage collection. The memory space allotted to objects that the program is no longer using is automatically released by one or more garbage collectors found in programming languages with GC support.  

16. What is the time complexity of this function? 

int N = ...;
boolean PrimeNum= true;
for (int j = 2; j * j <= N; j++) {
    if (N % j == 0) {
        PrimeNum = false;
    }
}


It will run until j*j<=N, therefore, the number will run till the square root of the number N, therefore, the time complexity of the above function is N^(1/2). 

18. What are B-trees Data structures? 

A common m-way tree for disc access is known as the B Tree. A B-Tree with order m can only contain m children and m-1 keys. One of the main benefits of using a B tree is its capacity to store a large number of keys and large key values in a single node while maintaining a low tree height.

Must Read LWC Interview Questions

Tiger Analytics Interview Questions For Advanced

19. Explain how the file is removed from Python. 

Use command os.remove(fileName)

import os
os.remove(“FileChanged.csv")
print("File Deleted!")
You can also try this code with Online Python Compiler
Run Code


20. Explain this Statement “A single try block and multiple catch blocks can co-exist in a Java Program”?   

Multiple catch blocks are possible, but only the first catch block that satisfies the catch condition will be executed, so specific approaches should come before the general approach. The example code provided demonstrates this.  

public class Multiple_Catch {
public static void main(String args[]) {
 try {
  int n = 100, x = 0;
  int A[] = new int[n];
  for (int j = 0; j <= n; j++) {
   A[j] = j / x;
  }
 }
 catch (Array_index_out_of_bounds_exception exception) {
  System.out.println("first block = Array_Index_of_bound_Exception");
 }
 catch (Arithmetic_exception exception) {
  System.out.println("Second block = Arithmetic_exception");
 }
 catch (Exception exception) {
  System.out.println("Third block = Exception");
 }
}
}
You can also try this code with Online Java Compiler
Run Code

21. Write the syntax of writing the ternary Operators in python. 

[onTrue] if [expression] else [onFalse]  x, y = 20, 40 count = x if x> y else y
You can also try this code with Online Python Compiler
Run Code

22. What are lambda functions in python? 

In Python, an anonymous function—one without a name—is referred to as a lambda function. The term "lambda function" refers to the use of the "lambda" keyword in place of the "def" keyword to define anonymous functions. Lambda functions only allow one statement and any number of arguments. 

Example: 

l = lambda a,b: a*b
print(x(5, 6)) 
You can also try this code with Online Python Compiler
Run Code


Output

30 
You can also try this code with Online Python Compiler
Run Code

23. What is an AVL TREE? 

A height-balancing binary search tree called an AVL tree (Adelson, Velskii, and Landi) is one in which the height difference between any node's left and right subtrees is less than or equal to one. Preventing the binary search tree from becoming skewed, regulates the height of the tree. This technique is employed when working with a large data set and involves ongoing data insertion and deletion pruning. 

24. Write the program to reverse the string in java? 

Algorithm to implement the above program. 

  • Make a string s 
  • Find the length of string s
  • loop through the string's characters.
  • Take a new character and characters of a string in reverse order. 
String s= "CodingNinjas";
String rString = "";
int length = s.length();
for (int i = 0; i < length; i++) {
     rString = s.charAt(i) + rString;
}
System.out.println(rString);
You can also try this code with Online Java Compiler
Run Code

25. Write a program to check whether two strings are anagrams. 

Two strings are called anagrams when they contain the same set of characters. 

  1. Sort both strings. 
  2. Check if the length of two strings are same or not, if the length is not the same then they cannot be anagrams 
  3. Start Traversing both the strings from index 0, and compare both of them, if we reach the end of the string, then they both are anagrams. 
  4. Return true, if we reach the end of the string otherwise return false. 
#include <bits/stdc++.h>
using namespace std;
bool isAnagram(string s1, string s2)
{
    if (s1.length() != s2.length())
        return false;
    sort(s1.begin(), s1.end());
    sort(s2.begin(), s2.end());
    for (int i = 0; i < s1.size(); i++)
    {
        if (s1[i] != s2[i])
            return false;
    }
    return true;
}
int main()
{
    string s1 = "Hello";
    string s2 = "elloH";
    if (isAnagram(s1, s2))
        cout << "True";
    else
        cout << "False" << endl;
}
You can also try this code with Online C++ Compiler
Run Code


Output

True 
You can also try this code with Online C++ Compiler
Run Code

26. Write a program to implement topoSort in the graph.

Toposort in a graph is a linear ordering of vertices such that if there is an edge between u->v, u appears before v in that ordering. 

  1. We will do the DFS order traversal of the graph and use a stack data structure to store the topo sort of the graph. 
  2. We will push the last visited nodes into the graph first so that when we pop from the graph, it will be last in the output. 
  3. Finally, pop all the values from the stack, and print it. 
  4. We will get the topo sort of the given graph. 
#include <bits/stdc++.h>
using namespace std;
void findTopoSort(int node, vector<int> &vis, stack<int> &st, vector<int> adj[])
{
    vis[node] = 1;


    for (auto it : adj[node])
    {
        if (!vis[it])
        {
            findTopoSort(it, vis, st, adj);
        }
    }
    st.push(node);
}
vector<int> topoSort(int N, vector<int> adj[])
{
    stack<int> st;
    vector<int> vis(N, 0);
    for (int i = 0; i < N; i++)
    {
        if (vis[i] == 0)
        {
            findTopoSort(i, vis, st, adj);
        }
    }
    vector<int> topo;
    while (!st.empty())
    {
        topo.push_back(st.top());
        st.pop();
    }
    return topo;
}


// { Driver Code Starts.
int main()
{


    int N = 6;


    vector<int> adj[5 + 1];


    adj[4].push_back(2);
    adj[2].push_back(0);
    adj[3].push_back(0);
    adj[5].push_back(1);
    adj[1].push_back(3);
    adj[3].push_back(1);


    vector<int> res = topoSort(6, adj);


    cout << "Toposort of the given graph is:" << endl;
    for (int i = 0; i < res.size(); i++)
        cout << res[i] << " ";


    return 0;
}
You can also try this code with Online C++ Compiler
Run Code


Output 

output

27. Write a python program for the triangle? 

def Star_triangle(x):
for i in range(x):
print(' '*(x-i-1)+'*'*(2*i+1))
Star_triangle(10)
You can also try this code with Online Python Compiler
Run Code


Output

triangle

Conclusion

In this blog, we discussed the introduction to tiger analytics, roles offered by tiger analytics, and tiger analytics interview questions for freshers.  

For more interview experience and tiger analytics interview questions for freshers, you can refer to these links: 

Refer to our guided paths on Coding Ninjas Code360 to learn more about DSA, Competitive Programming, JavaScript, System Design, etc. Enroll in our courses and refer to the mock test and problems available; look at the Top 150 Interview Puzzles interview experiences, and interview bundle for placement preparations. Read our blogs on aptitudecompetitive programminginterview questionsIT certifications, and data structures and algorithms for the best practice.

Live masterclass