Problem Brief
Search Suggestions System
NEW GRADOA
See Google online assessment and hiring insights
You are given a list of products, where each product is a string. You are also given a searchWord. After each character typed, return the top k suggestions of product names that match the typed prefix.
Each product also has an associated popularity score (Map
You must return suggestions after each character of searchWord. Handle up to 1e5 products and optimize for performance.
1Example 1
Input
products = ["apple", "appetizer", "application", "app", "apply", "banana", "appstore"], popularity = [["apple", "80"], ["appetizer", "70"], ["application", "90"], ["app", "90"], ["apply", "85"], ["banana", "60"], ["appstore", "90"]], searchWord = "app", k = 3
Output
[["app", "application", "appstore"], ["app", "application", "appstore"], ["app", "application", "appstore"]]
Explanation
~.~