每天弄懂一道面试题/Js小知识
给定一个整数数组,判断数组中是否有两个不同的索引 i 和 j..
给定一个整数数组和一个整数k ,判断数组中是否存在两个不同的索引i 和j ..
城市的天际线是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓..
给定一个整数数组,判断是否存在重复元素..
找出所有相加之和为n 的k 个数的组合。 组合中只允许含有 1 -9 的正整数..
在未排序的数组中找到第 k 个最大的元素..
给定一个字符串 s ,你可以通过在字符串前面添加字符将其转换为回文串..
你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金..
给定一个二维网格board 和一个字典中的单词列表 words ..
设计一个支持以下两种操作的数据结构..
现在你总共有 n 门课需要选,记为 0 到 n-1 ..
0
n-1
给定一个含有n 个正整数的数组和一个正整数s , 找出该数组中满足其和**≥ ..
实现一个 Trie (前缀树),包含 insert , search ..
insert
search
现在你总共有 n 门课需要选,记为 0 到 n-1 。
反转一个单链表。
给定两个字符串s 和t ,判断它们是否是同构的。
统计所有小于非负整数n 的质数的数量。
删除链表中等于给定值val 的所有节点。
一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和.
给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点).
给定一个由 '1' (陆地)和 '0' (水)组成的的二维网格,计算岛屿的数量…
'1'
'0'
给定一棵二叉树,想象自己站在它的右侧…
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金…
编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为…
颠倒给定的 32 位无符号整数的二进制位.
给定一个数组,将数组中的元素向右移动k 个位置.
给定一个数组,它的第i 个元素是一支给定的股票在第 i 天的价格.
所有 DNA 由一系列缩写为 A,C,G 和 T 的核苷酸组成.
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数.
一些恶魔抓住了公主(P )并将她关在了地下城的右下角.
实现一个二叉搜索树迭代器.
给定一个Excel表格中的列名称,返回其相应的列序号
给定一个大小为 n 的数组,找到其中的众数
给定一个正整数,返回它在 Excel 表中相对应的列名称。
给定一个已按照**升序排列 ** 的有序数组
给定两个整数,分别表示分数的分子numerator 和分母
比较两个版本号 version1 和 version2
给定一个无序的数组,找出数组在排序之后
峰值元素是指其值大于左右相邻值的元素
编写一个程序,找到两个单链表相交的起始节点。
设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。
假设按照升序排序的数组在预先未知的某个点上进行了旋转
给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列
nums
给定一个字符串,逐个翻转字符串中的每个单词。
根据 逆波兰表示法,求表达式的值。
给定一个二维平面,平面上有n 个点,求最多有多少个点在同一条直线上
在O (n logn ) 时间复杂度和常数级空间复杂度下
对链表进行插入排序
运用你所掌握的数据结构,设计和实现一个
给定一个二叉树,返回它的 后序 遍历。
给定一个二叉树,返回它的前序 遍历。
给定一个单链表L :L 0→L 1→…→L n -1→L n
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)
pos
给定一个非空 字符串 s 和一个包含非空 单词列表的字典 wordDict
给定一个链表,每个节点包含一个额外增加的随机指针,
给定一个非空 整数数组,除了某个元素只出现一次以外,
老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,
在一条环路上有N 个加油站,其中第i 个加油站有汽油 gas[i] ** 升。
gas[i]
给定无向 连通 图中一个节点的引用,
给定一个字符串 s ,将 s 分割成一些子串,使每个子串都是回文串。
给定一个字符串 s ,将s 分割成一些子串,使每个子串都是回文串。
给定一个二维的矩阵,包含 'X' 和 'O' (字母 O )……
'X'
'O'
给定一个二叉树,它的每个结点都存放一个 0-9 的数字
0-9
给定一个未排序的整数数组,找出最长连续序列的长度。
给定两个单词(beginWord 和 endWord )和一个字典,找到从beginWord 到endWord ……
给定两个单词(beginWord 和 endWord )和一个字典 wordList ……
给定一个非空 二叉树,返回其最大路径和。
给定一个数组,它的第i 个元素是一支给定的股票在第 i 天的价格。
给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。
给定一个非负索引k ,其中 k ≤33,返回杨辉三角的第 k 行。
给定一个非负整数numRows, 生成杨辉三角的前numRows 行。
给定一个二叉树
给定一个完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。
给定一个字符串S 和一个字符串T ,计算在 S 的子序列中 T 出现的个数。
给定一个二叉树,原地 将它展开为链表。.
给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路…….
给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径.
给定一个二叉树,找出其最小深度。
给定一个二叉树,判断它是否是高度平衡的二叉树。
给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。
将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。
给定一个二叉树,返回其节点值自底向上的层次遍历。
根据一棵树的中序遍历与后序遍历构造二叉树。
根据一棵树的前序遍历与中序遍历构造二叉树。
给定一个二叉树,找出其最大深度。
给定一个二叉树,返回其节点值的锯齿形层次遍历。
给定一个二叉树,返回其按层次遍历的节点值。
给定一个二叉树,检查它是否是镜像对称的。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
二叉搜索树中的两个节点被错误地交换。
给定一个二叉树,判断其是否是一个有效的二叉搜索树。
给定三个字符串s1 , s2 , s3 , 验证s3 是否是由s1 和s2 交错组成的
给定一个整数 n ,求以1 …n 为节点组成的二叉搜索树有多少种?
给定一个整数 n ,生成所有由 1 …n 为节点所组成
给定一个二叉树,返回它的中序 遍历
给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式
反转从位置 m 到 n 的链表。请使用一趟扫描完成反转
一条包含字母 A-Z 的消息通过以下方式进行了编码
A-Z
给定一个可能包含重复元素的整数数组 nums ,返回该数组所有可能的子集(幂集)
格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个位数的差异
给定两个有序整数数组nums1 和 nums2 ,将 nums2 合并到nums1 中, 使得num1 成为一个有序数组
给定一个字符串s1 ,我们可以把它递归地分割成两个非空子字符串,从而将其表示为二叉树
给定一个链表和一个特定值x ,对链表进行分隔,使得所有小于 x 的节点都在大于或等于
给定一个仅包含0 和 1 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积
给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1
给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次
给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中*没有重复出现
假设按照升序排序的数组在预先未知的某个点上进行了旋转。
给定一个排序数组,你需要在原地 删除重复出现的元素
给定一组不含重复元素 的整数数组nums ,返回该数组所有可能的子集(幂集)
给定两个整数 n 和 k ,返回 1 … n 中所有可能的 k 个数的组合
给定一个字符串 S 和一个字符串 T,请在 S 中找出包含 T 所有字母的最小子串
给定一个包含红色、白色和蓝色,一共n 个元素的数组
编写一个高效的算法来判断m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性
给定一个m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0
给定两个单词word1 和word2 ,计算出将word1 转换成word2 所使用的最少操作数
以 Unix 风格给出一个文件的绝对路径 ,你需要简化它。或者换句话说,将其转换为规范路径
假设你正在爬楼梯。需要 n 阶你才能到达楼顶……
实现 int sqrt(int x) 函数
int sqrt(int x)
给定一个单词数组和一个长度maxWidth ,重新排版单词,使其成为每行恰好有maxWidth 个字符……
给定两个二进制字符串,返回他们的和~
给定一个由整数 组成的非空 数组所表示的非负整数~
验证给定的字符串是否可以解释为十进制数字……
给定一个包含非负整数的 m xn 网格,请找出一条从左上角到右下角的路径……
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角……
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )
给定一个链表,旋转链表,将链表每个节点向右移动k 个位置,其中k 是非负数
给出集合 [1,2,3,…,n] ,其所有元素共有n ! 种排列
[1,2,3,…,n]
给定一个正整数n ,生成一个包含 1 到n 2所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵
给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度
' '
给出一个无重叠的 , 按照区间起始端点排序的区间列表
给出一个区间的集合,请合并所有重叠的区间
给定一个非负整数数组,你最初位于数组的第一个位置……
给定一个包含m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序……
给定一个整数数组 nums ,找到一个具有最大和的连续子数组……
n 皇后问题研究的是如何将 n 个皇后放置在 n ×n 的棋盘上……
实现pow(x , n ),即计算 x 的 n 次幂函数。
给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同
给定一个 n ×n 的二维矩阵表示一个图像
给定一个可包含重复数字的序列,返回所有不重复的全排列~
给定一个没有重复 数字的序列,返回其所有可能的全排列~
给定一个非负整数数组,你最初位于数组的第一个位置~
给定一个字符串( s ) 和一个字符模式( p ) ,实现一个支持 '?' 和 '*' 的通配符匹配~
s
p
'?'
'*'
给定两个以字符串形式表示的非负整数 num1 和 num2 ,返回 num1 和 num2 的乘积~
num1
num2
给定n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子~
给定一个未排序的整数数组,找出其中没有出现的最小的正整数
给定一个数组 candidates 和一个目标数 target ,找出 candidates^
candidates
target
给定一个无重复元素 的数组 candidates 和一个目标数 target ,找出^
报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数
编写一个程序,通过已填充的空格来解决数独问题
判断一个9x9 的数独是否有效。只需要根据以下规则 ,验证已经填入的数字是否有效即可 ……
给定一个按照升序排列的整数数组 nums ,和一个目标值 target ……
假设按照升序排序的数组在预先未知的某个点上进行了旋转……
给定一个只包含 '(' 和 ')' 的字符串,找出最长的包含有效括号……
'('
')'
实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大……
给定一个字符串s 和一些长度相同的单词words。 找出……
给定两个整数,被除数 dividend 和除数 divisor……
dividend
divisor
给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出……
给定一个数组 nums 和一个值 val ,你需要……
给定一个排序数组,你需要在原地……
k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是k 的整数倍……
给定一个链表,两两交换其中相邻的节点,并返回交换后的链表……
合并k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度……
给出n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的 括号组合……
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的……
给定一个只包括 '(' , ')' , '{' , '}' , '[' , ']' 的字符串,判断字符串是否有效……
'{'
'}'
'['
']'
给定一个链表,删除链表的倒数第n 个节点,并且返回链表的头结点……
给定一个包含n 个整数的数组 nums 和一个目标值 target ,判断 nums 中是否存在四个元素……
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合……
2-9
给定一个包括n 个整数的数组 nums ** 和 一个目标值 target……
给定一个包含 n 个整数的数组 nums ,判断 nums 中是否存在三个元素 a,b,c , 使得a + b + c = 0 ?找出所有满足条件且不重复的三元组
编写一个函数来查找字符串数组中的最长公共前缀。
罗马数字包含以下七种字符: I , V , X , L , C , D 和 M …
I
V
X
L
C
D
M
给定 n 个非负整数 a 1,a 2,…,a n,每个数代表坐标中的一个点(i ,ai ) …
给定一个字符串( s ) 和一个字符模式( p )。实现支持 '.' 和 '*' 的正则表达式匹配…
'.'
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数…
请你来实现一个atoi函数,使其能将字符串转换成整数…
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转列…
将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列…
给定一个字符串s ,找到s中最长的回文子串。你可以假设s的最大长度为 1000…
给定一个字符串,请你找出其中不含有重复字符的最长子串 的长度…
给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序 的方式存储的,并且它们的每个节点只能存储一位 数字…
给定一个整数数组 nums 和一个目标值 target ,请你在该数组中找出和为目标值的那两个 整数,并返回他们的数组下标…