Bird
Raised Fist0
C Sharp (C#)programming~5 mins

Constant patterns in C Sharp (C#) - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Constant patterns
O(1)
Understanding Time Complexity

Let's look at how some code runs in a way that doesn't change with input size.

We want to see what happens when the steps stay the same no matter how big the input is.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


int MultiplyByTwo(int number)
{
    int result = number * 2;
    return result;
}

int value = 10;
int doubled = MultiplyByTwo(value);
Console.WriteLine(doubled);
    

This code multiplies a single number by two and prints the result.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: One multiplication and one return.
  • How many times: Exactly once, no loops or repeats.
How Execution Grows With Input

Since the code does the same steps no matter the input size, the work stays steady.

Input Size (n)Approx. Operations
103 (multiply, assign, return)
1003 (same steps)
10003 (still the same steps)

Pattern observation: The number of steps does not increase with input size; it stays constant.

Final Time Complexity

Time Complexity: O(1)

This means the code takes the same amount of time no matter how big the input is.

Common Mistake

[X] Wrong: "If the input number is bigger, the code will take longer to run."

[OK] Correct: The code does just one multiplication and return, so input size does not affect the steps.

Interview Connect

Understanding constant time helps you recognize when code runs quickly and predictably, a useful skill in many coding tasks.

Self-Check

"What if we added a loop that runs 'number' times inside the function? How would the time complexity change?"

Practice

(1/5)
1. What does a constant pattern in C# do when used in a switch statement?
easy
A. It checks if the value is greater than a constant.
B. It checks if the value exactly matches a fixed constant.
C. It checks if the value is less than a constant.
D. It checks if the value is of a certain type.

Solution

  1. Step 1: Understand constant pattern purpose

    Constant patterns compare a value to a fixed constant to see if they are equal.
  2. Step 2: Apply to switch statement

    In a switch, constant patterns match cases where the value equals the constant exactly.
  3. Final Answer:

    It checks if the value exactly matches a fixed constant. -> Option B
  4. Quick Check:

    Constant pattern = exact value check [OK]
Hint: Constant pattern means exact value match check [OK]
Common Mistakes:
  • Thinking it checks ranges instead of exact values
  • Confusing with type patterns
  • Assuming it checks inequality
2. Which of the following is the correct syntax for a constant pattern in an if statement in C#?
easy
A. if (is x 10) { }
B. if (x == is 10) { }
C. if (x is 10) { }
D. if (x = 10) { }

Solution

  1. Step 1: Recall constant pattern syntax

    The syntax uses is followed by the constant value to check equality.
  2. Step 2: Check each option

    if (x is 10) { } uses if (x is 10), which is correct. Others have syntax errors.
  3. Final Answer:

    if (x is 10) { } -> Option C
  4. Quick Check:

    Correct constant pattern syntax = if (x is 10) [OK]
Hint: Use 'is' keyword followed by constant value [OK]
Common Mistakes:
  • Using assignment '=' instead of 'is'
  • Placing 'is' incorrectly
  • Adding extra operators
3. What will be the output of the following C# code?
int number = 5;
switch (number)
{
    case 3:
        Console.WriteLine("Three");
        break;
    case 5:
        Console.WriteLine("Five");
        break;
    default:
        Console.WriteLine("Other");
        break;
}
medium
A. Five
B. Three
C. Other
D. No output

Solution

  1. Step 1: Identify the value of 'number'

    The variable 'number' is assigned the value 5.
  2. Step 2: Match the switch cases

    The switch checks cases 3 and 5. Since number is 5, it matches case 5 and prints "Five".
  3. Final Answer:

    Five -> Option A
  4. Quick Check:

    number = 5 matches case 5 [OK]
Hint: Match value to case constant exactly [OK]
Common Mistakes:
  • Choosing default instead of matching case
  • Confusing case values
  • Ignoring break statements
4. Identify the error in this C# code using constant patterns:
object obj = 10;
if (obj is 10)
{
    Console.WriteLine("Ten");
}
medium
A. No error, code is correct
B. Missing cast to int before pattern matching
C. Cannot use constant pattern with object type
D. Constant pattern requires a variable after 'is'

Solution

  1. Step 1: Understand constant pattern with object

    Constant patterns can be used with object type to check if it equals a constant value.
  2. Step 2: Check code correctness

    The code uses obj is 10 correctly to check if obj equals 10. This is valid syntax and logic.
  3. Final Answer:

    No error, code is correct -> Option A
  4. Quick Check:

    Constant pattern works with object type [OK]
Hint: Constant pattern works directly on object values [OK]
Common Mistakes:
  • Assuming cast needed before pattern
  • Thinking constant pattern needs variable
  • Confusing with type patterns
5. Given a list of integers, which C# code correctly uses constant patterns to count how many times the number 7 appears?
var numbers = new List<int> {1, 7, 3, 7, 5};
int count = 0;
foreach (var n in numbers)
{
    // Fill in the blank
}
Console.WriteLine(count);
hard
A. if (n == 7) count = 7;
B. if (n is not 7) count++;
C. if (n is int) count++;
D. if (n is 7) count++;

Solution

  1. Step 1: Understand the goal

    We want to count how many times 7 appears in the list.
  2. Step 2: Use constant pattern to check for 7

    The correct constant pattern is if (n is 7) which checks if n equals 7, then increments count.
  3. Final Answer:

    if (n is 7) count++; -> Option D
  4. Quick Check:

    Constant pattern for 7 increments count [OK]
Hint: Use 'is' with constant to check exact value [OK]
Common Mistakes:
  • Assigning count instead of incrementing
  • Checking type instead of value
  • Counting non-7 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