
set
hestyle
戎码一生!
展开
-
LeetCode 随机翻转矩阵
题中给出一个 n 行 n 列的二维矩阵 (n_rows,n_cols),且所有值被初始化为 0。要求编写一个 flip 函数,均匀随机的将矩阵中的 0 变为 1,并返回该值的位置下标 [row_id,col_id];同样编写一个 reset 函数,将所有的值都重新置为 0。尽量最少调用随机函数 Math.random(),并且优化时间和空间复杂度。注意:1.1 <= n_rows, n_...原创 2019-04-07 14:15:12 · 596 阅读 · 0 评论 -
LeetCode 最小时间差(set辅助)
给定一个 24 小时制(小时:分钟)的时间列表,找出列表中任意两个时间的最小时间差并已分钟数表示。示例 1:输入: ["23:59","00:00"]输出: 1备注:列表中时间数在 2~20000 之间。每个时间取值在 00:00~23:59 之间。思路分析: 直接处理“小时 : 分钟”比较复杂,我们将所有时间点转换为分钟数,并且按照分钟进行排序。然后找到相邻的两个最小的间距就是...原创 2019-04-09 15:24:23 · 609 阅读 · 0 评论 -
LeetCode 分糖果(hash表、set容器)
给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果。你需要把这些糖果平均分给一个弟弟和一个妹妹。返回妹妹可以获得的最大糖果的种类数。示例 1:输入: candies = [1,1,2,2,3,3]输出: 3解析: 一共有三种种类的糖果,每一种都有两个。 最优分配方案:妹妹获得[1,2,3],弟弟也获得[1,2,3]。这样使妹妹获得糖果的种类数最多。...原创 2019-04-13 14:53:31 · 305 阅读 · 0 评论 -
LeetCode N叉树的后序遍历(递归、递推)
给定一个 N 叉树,返回其节点值的后序遍历。例如,给定一个 3叉树 :返回其后序遍历: [5,6,3,2,4,1].说明: 递归法很简单,你可以使用迭代法完成此题吗?思路分析: N叉树的后序遍历与二叉树的后序遍历思路一样,先访问子节点,再访问根节点。请先翻阅 LeetCode 二叉树的后序遍历(递归、递推)方法一:递归法。/*// Definition for a Node.c...原创 2019-04-14 15:39:05 · 879 阅读 · 0 评论 -
LeetCode 前K个高频单词
给一非空的单词列表,返回前 k 个出现次数最多的单词。返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,按字母顺序排序。示例 1:输入: ["i", "love", "leetcode", "i", "love", "coding"], k = 2输出: ["i", "love"]解析: "i" 和 "love" 为出现次数最多的两个单词,均为2次。 注意,...原创 2019-04-23 17:32:36 · 746 阅读 · 1 评论 -
LeetCode 链表组件
给定一个链表(链表结点包含一个整型值)的头结点 head。同时给定列表 G,该列表是上述链表中整型值的一个子集。返回列表 G 中组件的个数,这里对组件的定义为:链表中一段最长连续结点的值(该值必须在列表 G 中)构成的集合。示例 1:输入: head: 0->1->2->3G = [0, 1, 3]输出: 2解释: 链表中,0 和 1 是相连接的,且 G 中不包...原创 2019-05-19 20:25:05 · 489 阅读 · 0 评论 -
LeetCode 唯一摩尔斯密码词
国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: “a” 对应 “.-”, “b” 对应 “-…”, “c” 对应 “-.-.”, 等等。为了方便,所有26个英文字母对应摩尔斯密码表如下:[".-","-…","-.-.","-…",".","…-.","–.","…","…",".—","-.-",".-…","–","-.","—",".–."...原创 2019-05-17 11:34:46 · 432 阅读 · 0 评论 -
LeetCode 考场就座
在考场里,一排有 N 个座位,分别编号为 0, 1, 2, …, N-1 。当学生进入考场后,他必须坐在能够使他与离他最近的人之间的距离达到最大化的座位上。如果有多个这样的座位,他会坐在编号最小的座位上。(另外,如果考场里没有人,那么学生就坐在 0 号座位上。)返回 ExamRoom(int N) 类,它有两个公开的函数:其中,函数 ExamRoom.seat() 会返回一个 int (整型数...原创 2019-06-04 15:29:33 · 923 阅读 · 0 评论 -
LeetCode 模拟行走机器人(图解+蛮力法)
机器人在一个无限大小的网格上行走,从点 (0, 0) 处开始出发,面向北方。该机器人可以接收以下三种类型的命令:-2:向左转 90 度-1:向右转 90 度1 <= x <= 9:向前移动 x 个单位长度在网格上有一些格子被视为障碍物。第 i 个障碍物位于网格点 (obstacles[i][0], obstacles[i][1])如果机器人试图走到障碍物上方,那么它将停...原创 2019-06-10 21:52:10 · 2240 阅读 · 0 评论