In-Place Doubling vs New List Doubling

Medium ⏱ 12 min 51% acceptance ★★★★★ 4.8
Write double_values(items, in_place) that doubles every number in items. If in_place is True, mutate items directly (modify each index) and return it. If in_place is False, leave items untouched and return a brand-new list of doubled values.

Examples

Example 1
Input
items = [1, 2, 3], in_place = True
Output
[2, 4, 6]
Explanation

The original list object is mutated and returned.

Example 2
Input
items = [1, 2, 3], in_place = False
Output
[2, 4, 6]
Explanation

A new list is built; items itself would remain [1, 2, 3].

Constraints

  • 0 <= len(items) <= 10^4

Topics

ListsMutation

Companies

IntelHCLTech

Hints

Hint 1

For in-place, assign items[i] = items[i] * 2 in a loop over range(len(items)).

Hint 2

For the non-mutating branch, build a fresh list with a comprehension instead.

Loading the Python runtime… Run executes your code and shows printed output; Submit checks your function against this problem's examples.