Bird
Raised Fist0
Javaprogramming~5 mins

Relational operators in Java - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Relational operators
O(n)
Understanding Time Complexity

Relational operators compare values to decide true or false. We want to see how the time to do these comparisons changes as input grows.

How does the number of comparisons affect the total time?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


int count = 0;
for (int i = 0; i < n; i++) {
    if (i < 10) {
        count++;
    }
}
    

This code counts how many numbers from 0 to n-1 are less than 10 using a relational operator.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: The loop runs from 0 to n-1, checking if each number is less than 10.
  • How many times: The relational check happens once per loop iteration, so n times.
How Execution Grows With Input

Each time n grows, the loop runs more times, so the number of comparisons grows too.

Input Size (n)Approx. Operations
1010 comparisons
100100 comparisons
10001000 comparisons

Pattern observation: The number of comparisons grows directly with n. Double n, double the comparisons.

Final Time Complexity

Time Complexity: O(n)

This means the time to finish grows in a straight line as the input size grows.

Common Mistake

[X] Wrong: "Since the relational check is simple, it takes constant time no matter what."

[OK] Correct: While one check is quick, the total time depends on how many times it runs. More input means more checks, so total time grows with n.

Interview Connect

Understanding how simple comparisons add up helps you explain how loops affect performance. This skill shows you can think about code efficiency clearly.

Self-Check

"What if we replaced the loop with two nested loops both running n times? How would the time complexity change?"

Practice

(1/5)
1. Which of the following relational operators in Java checks if two values are not equal?
easy
A. ==
B. >=
C. !=
D. <

Solution

  1. Step 1: Understand the meaning of relational operators

    Relational operators compare two values and return true or false based on the comparison.
  2. Step 2: Identify the operator for 'not equal'

    The operator '!=' means 'not equal to' in Java.
  3. Final Answer:

    != -> Option C
  4. Quick Check:

    Not equal operator = != [OK]
Hint: Remember: '!=' means not equal in Java [OK]
Common Mistakes:
  • Confusing '!=' with '=='
  • Using '=' instead of '=='
  • Mixing up '<' and '<='
2. Which of the following is the correct syntax to check if variable a is greater than or equal to variable b in Java?
easy
A. a => b
B. a >= b
C. a =< b
D. a =>= b

Solution

  1. Step 1: Recall the correct relational operator syntax

    The operator for 'greater than or equal to' is written as '>=' in Java.
  2. Step 2: Check each option for correct syntax

    a >= b uses '>=', which is correct. Other options have invalid syntax.
  3. Final Answer:

    a >= b -> Option B
  4. Quick Check:

    Greater or equal operator = >= [OK]
Hint: Use '>=' for greater or equal, not '=>' or '=<' [OK]
Common Mistakes:
  • Writing '=>' instead of '>='
  • Using '=' instead of '=='
  • Confusing '<=' and '=>'
3. What will be the output of the following Java code?
int x = 5;
int y = 10;
System.out.println(x < y);
System.out.println(x == y);
System.out.println(x != y);
medium
A. false false true
B. false true false
C. true true false
D. true false true

Solution

  1. Step 1: Evaluate each relational expression

    x is 5 and y is 10. So, x < y is true, x == y is false, and x != y is true.
  2. Step 2: Write the output in order

    The printed output will be: true false true.
  3. Final Answer:

    true false true -> Option D
  4. Quick Check:

    5 < 10 = true, 5 == 10 = false, 5 != 10 = true [OK]
Hint: Compare values step-by-step to get true/false results [OK]
Common Mistakes:
  • Mixing up == and !=
  • Assuming x == y is true
  • Confusing output order
4. Identify the error in the following Java code snippet:
int a = 7;
int b = 3;
if (a <> b) {
System.out.println("Not equal");
}
medium
A. The operator '<>' is invalid in Java
B. Missing semicolon after if statement
C. Variables a and b are not declared
D. The print statement syntax is incorrect

Solution

  1. Step 1: Check the relational operator used

    The operator '<>' is not a valid relational operator in Java. Java uses '!=' for not equal.
  2. Step 2: Verify other syntax elements

    Semicolons and print statement are correct. Variables are declared properly.
  3. Final Answer:

    The operator '<>' is invalid in Java -> Option A
  4. Quick Check:

    Use '!=' for not equal, not '<>' [OK]
Hint: Use '!=' for not equal; '<>' is invalid in Java [OK]
Common Mistakes:
  • Using '<>' instead of '!='
  • Forgetting semicolons
  • Incorrect print syntax
5. Given the code below, what will be the output?
int a = 4;
int b = 4;
int c = 5;
boolean result = (a <= b) && (c > b);
System.out.println(result);

Choose the correct output.
hard
A. true
B. false
C. Compilation error
D. Runtime exception

Solution

  1. Step 1: Evaluate each relational expression

    a <= b is 4 <= 4, which is true. c > b is 5 > 4, which is true.
  2. Step 2: Evaluate the logical AND operation

    Both conditions are true, so (true && true) is true.
  3. Final Answer:

    true -> Option A
  4. Quick Check:

    4 <= 4 and 5 > 4 = true [OK]
Hint: Both conditions must be true for && to be true [OK]
Common Mistakes:
  • Confusing && with ||
  • Misreading <= as < only
  • Assuming false if equal values
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard