Code Room
CodingMediumcod-g869
Subject Data wranglingLevel Mid–Senior~25 minCommon in Algorithms & data structures interviewsIndustries Software development

Question

Implement a relational inner join of two tables (`left` and `right`), each a list of dict rows, on a shared `key` column. For every pair of left and right rows with equal `key`, emit one merged row containing all of the left row's fields plus all of the right row's fields except a duplicate `key`. Preserve left-major order: iterate left rows in order and, within each, the matching right rows in their original order. Return the list of merged dict rows.

Implement
inner_join(left: list[dict], right: list[dict], key: str) → list[dict]
Examples
in[[{"id":1,"name":"a"}],[{"id":1,"age":30}],"id"]out[{"id":1,"age":30,"name":"a"}]
What a strong answer looks like

State your approach and its time/space complexity out loud before you optimize. Handle the edge cases (empty input, duplicates, overflow), and say why you chose this over the brute force. Green tests are the floor, not the grade.

Vibe coding: describe the solution in plain language (or narrate it) and the coach grades your approach. Generating runnable code from your description is coming next.

Run or narrate your approach, then ask the coach.