01 2018 档案

摘要:[抄题]: 克隆一张无向图,图中的每个节点包含一个 label 和一个列表 neighbors。 [思维问题]: [一句话思路]: 先BFS克隆点(一个点+扩展所有邻居),再克隆邻居(一个点+扩展所有邻居)。 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输 阅读全文
posted @ 2018-01-31 14:28 苗妙苗 阅读(316) 评论(0) 推荐(0)
摘要:[抄题]: 给出一棵二叉树,返回其节点值的锯齿形层次遍历(先从左往右,下一层再从右往左,层与层之间交替进行) [思维问题]: 不知道反复切换要怎么做:用boolean normalOrder当作布尔型控制变量 [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况 阅读全文
posted @ 2018-01-30 23:29 苗妙苗 阅读(268) 评论(0) 推荐(0)
摘要:[抄题]: 给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问) [思维问题]: [一句话思路]: 用queue存每一层 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]: [四刷]: [五刷]: [ 阅读全文
posted @ 2018-01-30 12:02 苗妙苗 阅读(483) 评论(0) 推荐(0)
摘要:[抄题]: 给一个二叉查找树以及一个节点,求该节点的中序遍历后继,如果没有返回null [思维问题]: 不知道分合算法和后序节点有什么关系:直接return表达式就行了,它自己会终止的。 [一句话思路]: 比root大时直接扔右边递归,比root小时 考虑是左边递归还是就是root [输入量]:空: 阅读全文
posted @ 2018-01-29 21:21 苗妙苗 阅读(454) 评论(0) 推荐(0)
摘要:[抄题]: 设计实现一个带有下列属性的二叉查找树的迭代器: 元素按照递增的顺序被访问(比如中序遍历) next()和hasNext()的询问操作要求均摊时间复杂度是O(1) 对于下列二叉查找树,使用迭代器进行中序遍历的结果为 [1, 6, 10, 11, 12] [思维问题]: [一句话思路]: 有 阅读全文
posted @ 2018-01-29 20:00 苗妙苗 阅读(289) 评论(0) 推荐(0)
摘要:[抄题]: [思维问题]: 不知道要定义resultType, 其实用仔细分析判断条件就行了:是否是bst+最大最小值 类似于平衡二叉树:是否平衡+左右的高度差 [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): 1-1也不是。所以le 阅读全文
posted @ 2018-01-29 17:18 苗妙苗 阅读(181) 评论(0) 推荐(0)
摘要:[抄题]: 给出一棵二叉树,寻找一条路径使其路径和最大,路径可以在任一节点中开始和结束(路径和为两个节点之间所在路径上的节点权值之和) [思维问题]: 不会写分合法 [一句话思路]: 用两次分治:root2any any2any分一次,左右再分一次。 [输入量]:空: 正常情况:特大:特小:程序里处 阅读全文
posted @ 2018-01-29 11:28 苗妙苗 阅读(362) 评论(0) 推荐(0)
摘要:[抄题]: Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree. “The lowest common ancestor is defined between two no 阅读全文
posted @ 2018-01-29 08:42 苗妙苗 阅读(192) 评论(0) 推荐(0)
摘要:[抄题]: Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as: a binary tree in which t 阅读全文
posted @ 2018-01-28 22:30 苗妙苗 阅读(147) 评论(0) 推荐(0)
摘要:[抄题]: 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的距离。 [思维问题]: [一句话思路]: 分合法的定义 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: 求最小距离时,注意左边或右边没有数的情况 阅读全文
posted @ 2018-01-28 18:35 苗妙苗 阅读(295) 评论(0) 推荐(0)
摘要:[抄题]:二叉树前序遍历 [思维问题]: 不会递归。三要素:下定义、拆分问题(eg root-root.left)、终止条件 [一句话思路]: 节点非空时往左移,否则新取一个点 再往右移。 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: 阅读全文
posted @ 2018-01-27 20:31 苗妙苗 阅读(227) 评论(0) 推荐(0)
摘要:空间复杂度看新开了什么数据结构就够了 公式=几个点*每个点执行了多少次 二叉树都是n次 二分法查找:lgn 全部查找:n n:找一个数,但是两边都要找。相当于遍历。类似于rotated sorted array的有重复 遍历版本。 nlgn:先分成两半,再全部合并。类似于merge sort. 左边 阅读全文
posted @ 2018-01-27 18:37 苗妙苗 阅读(300) 评论(0) 推荐(0)
摘要:[抄题]: 给一个单词列表,求出这个列表中出现频次最高的K个单词。 [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]: [四刷]: [五刷]: [总结]: [复杂度]:Ti 阅读全文
posted @ 2018-01-26 19:46 苗妙苗 阅读(333) 评论(0) 推荐(0)
摘要:[抄题]: 在一个排序矩阵中找从小到大的第 k 个整数。 排序矩阵的定义为:每一行递增,每一列也递增。 [思维问题]: 不知道应该怎么加,因为不是一维单调的。 [一句话思路]: 周围两个数给x或y挪一位, 如果hash数组没有就添加到minheap中 [输入量]:空: 正常情况:特大:特小:程序里处 阅读全文
posted @ 2018-01-19 11:48 苗妙苗 阅读(207) 评论(0) 推荐(0)
摘要:[抄题]: 数字是不断进入数组的,在每次添加一个新的数进入数组的同时返回当前新数组的中位数。 [思维问题]: [一句话思路]: 左边x个元素,右边要有x+1个元素,因此利用maxheap把左边的最大值揪出来,利用minheap把右边的最小值揪出来 如果maxHeap.peek() > minHeap 阅读全文
posted @ 2018-01-18 22:38 苗妙苗 阅读(449) 评论(0) 推荐(0)
摘要:[抄题]: [思维问题]: [一句话思路]:Long.valueOf(2)转换为long型再做 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [二刷]: [三刷]: [四刷]: [五刷]: [总结]: [复杂度]:Time 阅读全文
posted @ 2018-01-14 16:25 苗妙苗 阅读(228) 评论(0) 推荐(0)
摘要:[抄题]: 给出一个字符串数组S,找到其中所有的乱序字符串(Anagram)。如果一个字符串是乱序字符串,那么他存在一个字母集合相同,但顺序不同的字符串也在S中。 对于字符串数组 ["lint","intl","inlt","code"] 返回 ["lint","inlt","intl"] [思维问 阅读全文
posted @ 2018-01-13 22:48 苗妙苗 阅读(204) 评论(0) 推荐(0)
摘要:[抄题]: Given an unsorted array of integers, find the length of the longest consecutive elements sequence. For example,Given [100, 4, 200, 1, 3, 2],The 阅读全文
posted @ 2018-01-12 22:47 苗妙苗 阅读(135) 评论(0) 推荐(0)
摘要:[抄题]: [思维问题]: 需要从任何位置访问某数字有没有(重要 ),返回其位置(不重要),所以用hashmap。 需要从任何位置删除,用linkedlist。最终二者结合,用linked hashmap。 [一句话思路]: 链表存物理位置,key存数,value存值(要更新) [输入量]:空: 正 阅读全文
posted @ 2018-01-11 16:12 苗妙苗 阅读(166) 评论(0) 推荐(0)
摘要:Implement Queue using Stacks [抄题]: [思维问题]: [一句话思路]: 取头部、取出来的时候,用一个output来倒序 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: [总结]: [复杂度]:T 阅读全文
posted @ 2018-01-11 11:32 苗妙苗 阅读(251) 评论(0) 推荐(0)
摘要:[抄题]: [思维问题]: [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: newindex = (hashTable[i].val % newcapacity + newcapacity) % newcapacity; 阅读全文
posted @ 2018-01-09 17:13 苗妙苗 阅读(316) 评论(0) 推荐(0)
摘要:[抄题]: Given n non-negative integers representing the histogram's bar height where the width of each bar is 1, find the area of largest rectangle in th 阅读全文
posted @ 2018-01-09 10:28 苗妙苗 阅读(308) 评论(0) 推荐(0)
摘要:[抄题]: 实现一个带有取最小值min方法的栈,min方法将返回当前栈中的最小值。 你实现的栈将支持push,pop 和 min 操作,所有操作要求都在O(1)时间内完成。 [思维问题]: 想不到,脑洞不够大 [一句话思路]: 用一个minstack来辅助实现 [输入量]:空: 正常情况:特大:特小 阅读全文
posted @ 2018-01-08 11:48 苗妙苗 阅读(326) 评论(0) 推荐(0)
摘要:重复一次 [抄题]: 给定一个排序数组,在原数组中删除重复出现的数字,使得每个元素只出现一次,并且返回新的数组的长度。 不要使用额外的数组空间,必须在原地没有额外空间的条件下完成。 [思维问题]: [一句话思路]: 不重复时,size扩大 [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情 阅读全文
posted @ 2018-01-07 17:09 苗妙苗 阅读(162) 评论(0) 推荐(0)
摘要:[抄题]: 给你一个链表以及一个k,将这个链表从头指针开始每k个翻转一下。链表元素个数不是k的倍数,最后剩余的不用翻转。 [思维问题]: [一句话思路]: // reverse head->n1->..->nk->next.. // to head->nk->..->n1->next.. // re 阅读全文
posted @ 2018-01-06 22:26 苗妙苗 阅读(237) 评论(0) 推荐(0)