Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Reorder Array by Sign

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

Your question is Reorder Array by Sign. 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

A Veritas backup workflow uses signed integer priorities to classify work items. Reorder the given array so that every negative integer appears before every non-negative integer, while preserving the original relative order within both groups. Do not sort the values by magnitude.

Return a new array containing the same values. The input array may be modified, but modification is not required.

Formal Specification

Implement stable_partition_priorities(nums), where nums is a list of integers. Return a list containing all values from nums in stable partition order:

  1. Negative values, in their original order.
  2. Zero and positive values, in their original order.

The output must contain exactly the same number of occurrences of every value as the input.

Constraints

  • 0 <= nums.length <= 10^5
  • -10^9 <= nums[i] <= 10^9
  • Duplicate values are allowed
  • Zero belongs to the non-negative group
  • The output must preserve relative order within both groups

Function Signature

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