Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Array.map Polyfill

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Array.map Polyfill. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

EPAM Systems front-end components often transform arrays of configuration or display data before rendering. Implement a Python equivalent of JavaScript's Array.map() behavior.

Create array_map(items, operation) that returns a new array containing one transformed value for each input element. The operation represents the callback supplied to map and receives the current value, its zero-based index, and the original array. For JSON-compatible tests, represent the callback with one of these operation names: identity, double, square, or value_plus_index.

The function must preserve input order, include exactly one output for every input element, and leave the original array unchanged. Do not use Python's built-in map() or list comprehensions for the main implementation.

Formal Specification

  • Input: items, a list of integers, and operation, a supported string operation.
  • Output: A new list containing the transformed values.
  • identity returns the value unchanged.
  • double returns value * 2.
  • square returns value * value.
  • value_plus_index returns value + index.

Constraints

  • 0 <= len(items) <= 10^4
  • -10^9 <= items[i] <= 10^9
  • operation is one of: identity, double, square, value_plus_index
  • Return a new list and do not mutate items

Function Signature

def array_map(items, operation):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output