Convert Sorted List to Binary Search Tree LeetCode solution in Python
1class Solution:2def sortedListToBST(self, head: Optional[ListNode]) -> Optional[TreeNode]:3arr = []4while head:5arr.append(head.val)6head = head.next78def dfs(left, right):9if left > right:10return11m = (left + right) // 212return TreeNode(arr[m], dfs(left, m - 1), dfs(m + 1, right))1314return dfs(0, len(arr) - 1)