Top Travellers — LeetCode 1407 Python Solution
EasyDatabase
- Problem
- #1407
- Reading time
- 3 min
- Source
- leetcode.com
Table schema
SQL
Table: Users +---------------+---------+ | Column Name | Type | +---------------+---------+ | id | int | | name | varchar | +---------------+---------+ id is the column with unique values for this table. name is the name of the user.Example
SQL
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| id | int |
| name | varchar |
+---------------+---------+
id is the column with unique values for this table.
name is the name of the user.Python solution
Python
import duckdb
import pandas as pd
def solution(users: pd.DataFrame, rides: pd.DataFrame) -> pd.DataFrame:
con = duckdb.connect()
con.register("Users", users)
con.register("Rides", rides)
return con.execute("""SELECT name, IFNULL(SUM(distance), 0) AS travelled_distance
FROM
Users AS u
LEFT JOIN Rides AS r ON u.id = r.user_id
GROUP BY u.id
ORDER BY 2 DESC, 1;""").df()Complexity
| Measure | Complexity |
|---|---|
| Time | O(n log n) (typical) |
| Space | O(n) auxiliary |
Related problems
Frequently asked questions
- How hard is LeetCode 1407. Top Travellers?
- LeetCode 1407. Top Travellers is rated Easy on LeetCode.
- What topics does LeetCode 1407. Top Travellers cover?
- LeetCode 1407. Top Travellers is tagged Database on LeetCode.