书栈网 · BookStack 本次搜索耗时 0.035 秒,为您找到 328 个相关结果.
  • Binary Tree Serialization

    Binary Tree Serialization Question 题解 Python 源码分析 Java 源码分析 复杂度分析 Reference Binary Tree Serialization Question lintcode: (7) Binary Tree Serialization Design an a...
  • 如何寻找缺失和重复的元素

    思路分析 最后总结 今天就聊一道很看起来简单却十分巧妙的问题,寻找缺失和重复的元素。之前的一篇文章「寻找缺失元素」也写过类似的问题,不过这次的和上次的问题使用的技巧不同。 这是 LeetCode 645 题,我来描述一下这个题目: 给一个长度为 N 的数组 nums ,其中本来装着 [1..N] 这 N 个元素,无序。但是现在出现了一些错误,...
  • 介绍

    来源(书栈小编注) 网络 :cloud: 操作系统 :computer: 数据结构与算法 :pencil2: 面向对象 :couple: 数据库 :floppy_disk: Java :coffee: 分布式 :sweat_drops: 工具 :hammer: 编码实践 :speak_no_evil: 后记 :memo: 来源(书...
  • 138. Copy List with Random Pointer

    题目描述(中等难度) 思路分析 解法一 解法二 解法三 解法四 总 题目描述(中等难度) 给一个链表,返回复制后的链表。链表节点相对于普通的多了一个 random 指针,会随机指向链表内的任意节点或者指向 null 。 思路分析 这道题其实和 133 题 复制一个图很类似,这里的话就是要解决的问题就是,当更新当前节点的 ra...
  • 87. Scramble String

    题目描述(困难难度) 解法一 递归 解法二 动态规划 总 题目描述(困难难度) 把一个字符串按照树的形状,分成两部分,分成两部分…直到达到叶子节点。并且可以多次交换非叶子节点的两个子树,最后从左到右读取叶子节点,记为生成的字符串。题目是给两个字符串 S1 和 S2,然后问 S2 是否是 S1 经过上述方式生成的。 解法一 递归 开始的...
  • 62. Unique Paths

    题目描述(中等难度) 解法一 递归 解法二 动态规划 解法三 公式 总 题目描述(中等难度) 机器人从左上角走到右下角,只能向右或者向下走。输出总共有多少种走法。 解法一 递归 求 ( 0 , 0 ) 点到( m - 1 , n - 1) 点的走法。 (0,0)点到(m - 1 , n - 1) 点的走法等于(0,0)点右边的点 ...
  • 贪心算法之区间调度问题

    贪心算法之区间调度问题 一、问题概述 二、贪心解法 三、应用举例 贪心算法之区间调度问题 什么是贪心算法呢?贪心算法可以认为是动态规划算法的一个特例,相比动态规划,使用贪心算法需要满足更多的条件(贪心选择性质),但是效率比动态规划要高。 比如说一个算法问题使用暴力解法需要指数级时间,如果能使用动态规划消除重叠子问题,就可以降到多项式级别的时间...
  • 75. Sort Colors

    题目描述(中等难度) 解法一 解法二 解法三 总 题目描述(中等难度) 给一个数组,含有的数只可能 0,1,2 中的一个,然后把这些数字从小到大排序。 解法一 题目下边的 Follow up 提到了一个解法,遍历一次数组,统计 0 出现的次数,1 出现的次数,2 出现的次数,然后再遍历数组,根据次数,把数组的元素改成相应的值。当然我...
  • 68. Text Justification

    题目描述(困难难度) 解法一 总 题目描述(困难难度) 一个句子,和一个长度表示一行最长的长度,然后对齐文本,有下边几个规则。 同一个单词只能出现在一行中,不能拆分 一行如果只能放下一个单词,该单词放在最左边,然后空格补齐,例如 “acknowledgement#####”,这里只是我为了直观,# 表示空格,题目并没有要求。 一行如果有多...
  • 42. Trapping Rain Water

    题目描述(困难难度) 解法一 按行求 解法二 按列求 解法三 动态规划 解法四 双指针 解法五 栈 总 题目描述(困难难度) 黑色的看成墙,蓝色的看成水,宽度一样,给定一个数组,每个数代表从左到右墙的高度,求出能装多少单位的水。也就是图中蓝色正方形的个数。 解法一 按行求 这是我最开始想到的一个解法,提交后直接 AC 了,自己都...