开发者社区> 大江小浪> 正文

Leetcode刷题记录:构建最大数二叉树

简介: 题目要求,题目地址 给定一个不含重复数字的数组,最大二叉树构建规则如下: 1、根是数组中最大的数字 2、左边的子树是最大数字左边的内容 3、右边的子树是最大数字右边的内容 答案 class Solution(object): def constructMaximumBinaryTree(s...
+关注继续查看

题目要求,题目地址

给定一个不含重复数字的数组,最大二叉树构建规则如下:
1、根是数组中最大的数字
2、左边的子树是最大数字左边的内容
3、右边的子树是最大数字右边的内容

答案

class Solution(object):
    def constructMaximumBinaryTree(self, nums):
        """
        :type nums: List[int]
        :rtype: TreeNode
        """
        #print(max(nums))
        #print(nums.index(max(nums)))
        #print(nums)
        if len(nums) == 0:
            return None
        
        t = TreeNode(max(nums))
        if len(nums) > 1:
            t.left = self.constructMaximumBinaryTree(nums[:nums.index(max(nums))])
            t.right = self.constructMaximumBinaryTree(nums[nums.index(max(nums)) + 1 :])
        else:
            t.left = None
            t.right = None
        
        return t

优化思路

提交后这个答案只打败了17%的对手,分析一下感觉是因为index、len函数调用次数过多,应该可以将结果放在一个变量中,提高执行效率。

本文为作者原创,如果您觉得本文对您有帮助,请随意打赏,您的支持将鼓励我继续创作。

img_5aa33392af8827039c3ea963be129769.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
LeetCode 1877. 数组中最大数对和的最小值
一个数对 (a,b) 的 数对和 等于 a + b 。最大数对和 是一个数对数组中最大的 数对和 。
18 0
打败100%的用户LeetCode学生出勤记录使用JavaScript解题|前端学算法
打败100%的用户LeetCode学生出勤记录使用JavaScript解题|前端学算法
28 0
【leetcode刷题记录】js-两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。
14 0
【LeetCode】747. 至少是其他数字两倍的最大数
【LeetCode】747. 至少是其他数字两倍的最大数
10 0
LeetCode(数据库)- 报告的记录 II
LeetCode(数据库)- 报告的记录 II
20 0
LeetCode(数据库)- 报告的记录
LeetCode(数据库)- 报告的记录
28 0
LeetCode刷题记录(一):两数相加
LeetCode刷题记录(一):两数相加
56 0
【刷穿 LeetCode】552. 学生出勤记录 II :「记忆化搜索」&「动态规划」&「矩阵快速幂」
【刷穿 LeetCode】552. 学生出勤记录 II :「记忆化搜索」&「动态规划」&「矩阵快速幂」
63 0
【刷穿 LeetCode】551. 学生出勤记录 I : 简单模拟题(附模拟题目录)
【刷穿 LeetCode】551. 学生出勤记录 I : 简单模拟题(附模拟题目录)
77 0
[LeetCode 179. 最大数] | 刷题打卡[4]
给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。
61 0
+关注
大江小浪
平心静气,破浪劈坚!
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载