Bird
Raised Fist0
Rest APIprogramming~5 mins

Search parameter in Rest API - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Search parameter
O(n * m)
Understanding Time Complexity

When using a search parameter in a REST API, we want to know how the time to find results changes as the data grows.

We ask: How does the search time grow when there are more items to look through?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.

GET /items?search=keyword

// Server side pseudo-code
function searchItems(keyword, items) {
  let results = [];
  for (let item of items) {
    if (item.name.includes(keyword)) {
      results.push(item);
    }
  }
  return results;
}

This code searches through a list of items and returns those whose name contains the search keyword.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Looping through each item in the list to check if it matches the search keyword.
  • How many times: Once for every item in the list.
How Execution Grows With Input

As the number of items grows, the time to check each one grows too.

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

Pattern observation: The number of operations grows directly with the number of items.

Final Time Complexity

Time Complexity: O(n * m)

This means the search time grows linearly with the number of items and the length of the keyword check.

Common Mistake

[X] Wrong: "Searching with a keyword always takes the same time no matter how many items there are."

[OK] Correct: The code checks each item one by one, so more items mean more checks and more time.

Interview Connect

Understanding how search time grows helps you explain how APIs handle bigger data and why efficient searching matters.

Self-Check

"What if the items were sorted and we used a binary search instead? How would the time complexity change?"

Practice

(1/5)
1.

What is the main purpose of a search parameter in a REST API URL?

easy
A. To change the API server address
B. To filter the data returned by the API
C. To add security to the API
D. To format the API response as XML

Solution

  1. Step 1: Understand what search parameters do

    Search parameters are added to the URL to specify what data you want from the API.
  2. Step 2: Identify the purpose of filtering

    Filtering means selecting only the data that matches your criteria, which is what search parameters do.
  3. Final Answer:

    To filter the data returned by the API -> Option B
  4. Quick Check:

    Search parameter = filter data [OK]
Hint: Search parameters filter data in API URLs [OK]
Common Mistakes:
  • Thinking search parameters change server address
  • Confusing search parameters with security tokens
  • Assuming search parameters format response
2.

Which of the following is the correct way to add a search parameter named name with value alice to a REST API URL?

https://api.example.com/users
easy
A. https://api.example.com/users#name=alice
B. https://api.example.com/users/name=alice
C. https://api.example.com/users?name=alice
D. https://api.example.com/users&name=alice

Solution

  1. Step 1: Recall the syntax for search parameters

    Search parameters start with a question mark (?) after the base URL.
  2. Step 2: Check the correct separator and format

    The parameter is added as ?name=alice. Using & or # or slashes is incorrect here.
  3. Final Answer:

    https://api.example.com/users?name=alice -> Option C
  4. Quick Check:

    Use ? before first parameter [OK]
Hint: First parameter starts with ? in URL [OK]
Common Mistakes:
  • Using & instead of ? for first parameter
  • Using # which is for anchors, not parameters
  • Adding parameters as path segments
3.

What will be the full URL to search for users with age 30 and city as NY?

Base URL: https://api.example.com/users
medium
A. https://api.example.com/users?age=30&city=NY
B. https://api.example.com/users?age=30?city=NY
C. https://api.example.com/users&age=30&city=NY
D. https://api.example.com/users#age=30&city=NY

Solution

  1. Step 1: Add first parameter with ?

    The first search parameter starts with a question mark: ?age=30.
  2. Step 2: Add second parameter with &

    Additional parameters use & to separate: &city=NY.
  3. Final Answer:

    https://api.example.com/users?age=30&city=NY -> Option A
  4. Quick Check:

    First ? then & for multiple parameters [OK]
Hint: Use ? for first, & for others in URL [OK]
Common Mistakes:
  • Using ? for every parameter
  • Using & before first parameter
  • Using # which is for anchors
4.

Identify the error in this URL with search parameters:

https://api.example.com/products?category=books&price=20?sort=asc
medium
A. Using two question marks (?) for parameters
B. Missing & between parameters
C. Using = instead of : in parameters
D. Parameters should be in the URL path, not query

Solution

  1. Step 1: Check parameter separators

    Only the first parameter uses ?, others must use &.
  2. Step 2: Identify the error in the URL

    The URL incorrectly uses a second ? before sort=asc instead of &.
  3. Final Answer:

    Using two question marks (?) for parameters -> Option A
  4. Quick Check:

    Only one ? allowed, others use & [OK]
Hint: Only one ? in URL, then & for others [OK]
Common Mistakes:
  • Using multiple ? instead of &
  • Confusing = with : in parameters
  • Thinking parameters belong in URL path
5.

You want to search a REST API for books with author as John and year greater than 2010. Which URL correctly uses search parameters to do this?

hard
A. https://api.example.com/books?author=John&year>2010
B. https://api.example.com/books?author=John&year=2010>
C. https://api.example.com/books?author=John&year=gt2010
D. https://api.example.com/books?author=John&year_gt=2010

Solution

  1. Step 1: Understand how to express 'greater than' in search parameters

    REST APIs often use suffixes like _gt for 'greater than' in parameters.
  2. Step 2: Check each option for correct syntax

    https://api.example.com/books?author=John&year_gt=2010 uses year_gt=2010, which is a common and correct way to express this filter.
  3. Final Answer:

    https://api.example.com/books?author=John&year_gt=2010 -> Option D
  4. Quick Check:

    Use _gt suffix for greater than filters [OK]
Hint: Use _gt suffix for 'greater than' in parameters [OK]
Common Mistakes:
  • Using > directly in URL parameter
  • Placing operators after values
  • Confusing parameter syntax for filters
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