- Notifications
You must be signed in to change notification settings - Fork 266
Find the Difference of Two Signal Arrays
kyra-ptn edited this page Aug 11, 2024 · 2 revisions
Unit 2 Session 1 (Click for link to problem statements)
Understand what the interviewer is asking for by using test cases and questions about the problem.
-
Q: What is the problem asking for?
- A: The problem asks to return a list containing two lists: one with distinct integers from
signals1
not insignals2
, and one with distinct integers fromsignals2
not insignals1
.
- A: The problem asks to return a list containing two lists: one with distinct integers from
-
Q: What are the inputs?
- A: Two 0-indexed integer arrays
signals1
andsignals2
.
- A: Two 0-indexed integer arrays
-
Q: What are the outputs?
- A: A list of size 2 where the first element is a list of integers from
signals1
not insignals2
, and the second element is a list of integers fromsignals2
not insignals1
.
- A: A list of size 2 where the first element is a list of integers from
-
Q: Are there any constraints on the values in the arrays?
- A: The integers may appear in any order in the result lists.
Plan the solution with appropriate visualizations and pseudocode.
General Idea: Use sets to find the differences between the two lists and convert the results back to lists.
1. Convert `signals1` and `signals2` to sets `set1` and `set2`. 2. Find the difference between `set1` and `set2` and store it in `diff1`. 3. Find the difference between `set2` and `set1` and store it in `diff2`. 4. Convert `diff1` and `diff2` to lists. 5. Return the list `[diff1, diff2]`.
def find_difference(signals1, signals2): # Step 1: Convert the lists to sets set1 = set(signals1) set2 = set(signals2) # Step 2: Find the difference between the sets diff1 = list(set1 - set2) diff2 = list(set2 - set1) # Step 3: Return the differences as lists return [diff1, diff2]