Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class SparseVector:
- # Constructor for sparseVector.
- def __init__(self, nums: List[int]) -> None:
- # write your code here
- self.pairs = []
- for ind, num in enumerate(nums):
- if num:
- self.pairs.append([ind, num])
- def dotProduct(self, vec) -> int:
- # write your code here
- p = 0
- q = 0
- result = 0
- while p < len(self.pairs) and q < len(vec.pairs):
- if self.pairs[p][0] == vec.pairs[q][0]:
- result += self.pairs[p][1]*vec.pairs[q][1]
- p = p + 1
- q = q + 1
- elif self.pairs[p][0] < vec.pairs[q][0]:
- p = p + 1
- else:
- q = q + 1
- return result
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement