
leetcode刷题
文章平均质量分 81
liaoyaonline
这个作者很懒,什么都没留下…
展开
-
leetCode:数组中的逆序对
在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。遇到一个数,先通过函数查询比它小的数的父节点得到结果,再通过函数计算比它大的父节点,在它的自身以及父节点上面。具体方法就是它会把把数存放到父节点里,然后通过一个函数可以很简单的定位到任何一个数的父节点。使用暴力能够解决,就是遇到一个数,就向后面遍历比它小的数就计数。就知道了,如果细究的话可以去了解一下计算机里面负数的存储也就是补码的相关知识。测试了,不出所料,超时。原创 2022-10-04 08:55:33 · 832 阅读 · 0 评论 -
从中序与后序遍历序列构造二叉树
给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树。示例 1:输入:inorder = [9,3,15,20,7], postorder = [9,15,7,20,3]输出:[3,9,20,null,null,15,7]示例 2:输入:inorder = [-1], postorder = [-1]输出:[-1]原创 2022-09-29 03:08:02 · 118 阅读 · 0 评论 -
LeetCode:字符串的前缀分数和
例如,如果 words = [“a”, “ab”, “abc”, “cab”] ,那么 “ab” 的分数是 2 ,因为 “ab” 是 “ab” 和 “abc” 的一个前缀。返回一个长度为 n 的数组 answer ,其中 answer[i] 是 words[i] 的每个非空前缀的分数 总和。“abcd” 有 4 个前缀 “a”、“ab”、“abc” 和 “abcd”。当插入新的单词时经历过哪个节点,那个节点对应的前缀数目就会+1。输入:words = [“abc”,“ab”,“bc”,“b”]原创 2022-09-19 03:24:38 · 381 阅读 · 0 评论