自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 【三次过】Lintcode 1353. 根节点到叶节点求和

给定仅包含来自0-9的数字的二叉树,每个根到叶路径可以表示数字。举个例子:root-to-leaf路径1-> 2-> 3,它代表数字123,找到所有根到叶的数的总和样例Example:Input: [1,2,3] 1 / \ 2 3Output: 25Explanation:The root-to-leaf path 1->2 repre...

2018-12-31 10:39:53 352

原创 【一次过】Lintcode 1317. 统计完全树节点数

给定一棵完全二叉树,计算它的节点数。样例输入: 1 / \ 2 3 / \ /4 5 6输出: 6注意事项在完全二叉树中,除了可能的最后一层之外,每层都被完全填充,并且最后一层中所有节点都尽可能地靠左。 最后一层h中,可能有1到2 ^ h个节点。解题思路1:经典的Divide Conquer。但没有用到完全二叉树的定义。/**...

2018-12-30 10:04:18 127

原创 【一次过】Lintcode 1360. 对称树

给定二叉树,检查它是否是自身的镜像(即,围绕其中心对称)。样例例如,这个二叉树“{1,2,2,3,4,4,3}”是对称的: 1 / \ 2 2 / \ / \3 4 4 3的英文然如下 {1,2,2,#,3,#,3}不是: 1 / \ 2 2 \ \ 3 3注意事项如果您可以同时用递归和迭...

2018-12-29 10:18:45 177

原创 【一次过】Lintcode 228. 链表的中点

找链表的中点。样例链表 1->2->3 的中点是 2。链表 1->2 的中点是 1。挑战如果链表是一个数据流,你可以不重新遍历链表的情况下得到中点么?解题思路:快慢指针。/** * Definition for ListNode * public class ListNode { * int val; * ListNode...

2018-12-28 10:38:11 414

原创 【一次过】Lintcode 219. 在排序链表中插入一个节点

在链表中插入一个节点。样例给出一个链表 1->4->6->8 和 val = 5.。插入后的结果为 1->4->5->6->8。解题思路:简单。考虑到可能插入到表头,所以需要dummy节点做辅助。/** * Definition for ListNode * public class ListNode { * int...

2018-12-28 10:32:02 921

原创 Delete Duplicate Emails

Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique emails based on its smallest Id.+----+------------------+| Id | Email |+----+------...

2018-12-27 19:59:12 127

原创 Rising Temperature

Given a Weather table, write a SQL query to find all dates' Ids with higher temperature compared to its previous (yesterday's) dates.+---------+------------------+------------------+| Id(INT) | Re...

2018-12-25 11:05:22 124

原创 Second Highest Salary

Write a SQL query to get the second highest salary from the Employee table.+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+For exam...

2018-12-24 19:22:42 130

原创 【一次过】846. 多关键字排序

给定n个学生(1到n编号)以及他们的考试成绩,这里有两个关键字,考试成绩以及学生学号。根据第一关键字对数组进行排序(降序),如果第一关键字相同则根据第二关键字进行排序(升序).样例给出[[2,50],[1,50],[3,100]],返回[[3,100],[1,50],[2,50]]解题思路:注意写Comparator接口时,返回-1的条件即为期望排序结果,如本题中...

2018-12-24 11:30:26 550

原创 【两次过】Lintcode 595. 二叉树最长连续序列

给一棵二叉树,找到最长连续路径的长度。这条路径是指 任何的节点序列中的起始节点到树中的任一节点都必须遵循 父-子 联系。最长的连续路径必须是从父亲节点到孩子节点(不能逆序)。样例举个例子: 1 \ 3 / \ 2 4 \ 5最长的连续路径为3-4-5,所以返回3。 2 \ ...

2018-12-24 10:56:55 372

原创 【三次过】Lintcode 578. 最近公共祖先 III

给一棵二叉树和二叉树中的两个节点,找到这两个节点的最近公共祖先LCA。两个节点的最近公共祖先,是指两个节点的所有父亲节点中(包括这两个节点),离这两个节点最近的公共的节点。返回null如果两个节点在这棵树上不存在最近公共祖先的话。样例给出下面这棵树: 4 / \3 7 / \ 5 6LCA(3, 5) =4LCA(5, 6) =7LC...

2018-12-24 10:33:24 430

原创 【一次过】Lintcode 521. 去除重复元素

给一个整数数组,去除重复的元素。你应该做这些事1.在原数组上操作2.将去除重复之后的元素放在数组的开头3.返回去除重复元素之后的元素个数样例给出 nums = [1,3,1,4,4,2],你需要做以下操作1.将重复元素扔在最后面 => nums = [1,3,4,2,?,?].2.返回个数 4实际上我们并不在意?是什么挑战1.O(n)时间复杂度.2.O(...

2018-12-23 22:17:43 755

原创 Employees Earning More Than Their Managers

The Employee table holds all employees including their managers. Every employee has an Id, and there is also a column for the manager Id.+----+-------+--------+-----------+| Id | Name | Salary | ...

2018-12-23 19:02:31 124

原创 Swap Salary

Description| id | name | sex | salary ||----|------|-----|--------|| 1 | A | m | 2500 || 2 | B | f | 1500 || 3 | C | m | 5500 || 4 | D | f | 500 |只用一个 SQL 查询...

2018-12-23 11:01:25 305

原创 创建一个actor_name表,将actor表中的所有first_name以及last_name导入

题目描述对于如下表actor,其对应的数据为:actor_id first_name last_name last_update 1 PENELOPE GUINESS 2006-02-15 12:34:33 2 NICK WAHLBERG 2006-02-15 12:34:33 创建一个actor_name表,将actor...

2018-12-22 15:53:22 868

原创 【两次过】Lintcode 474. 最近公共祖先 II

给一棵二叉树和二叉树中的两个节点,找到这两个节点的最近公共祖先LCA。两个节点的最近公共祖先,是指两个节点的所有父亲节点中(包括这两个节点),离这两个节点最近的公共的节点。每个节点除了左右儿子指针以外,还包含一个父亲指针parent,指向自己的父亲。样例对于下面的这棵二叉树 4 / \3 7 / \ 5 6LCA(3, 5) = 4LCA(5,...

2018-12-22 11:11:29 508

原创 【两次过】Lintcode 453. 将二叉树拆成链表

将一棵二叉树按照前序遍历拆解成为一个假链表。所谓的假链表是说,用二叉树的right指针,来表示链表中的next指针。样例 1 \ 1 2 / \ \ 2 5 => 3 / \ \ \ 3 4 6 ...

2018-12-22 10:22:12 221

原创 删除emp_no重复的记录,只保留最小的id对应的记录。

题目描述删除emp_no重复的记录,只保留最小的id对应的记录。CREATE TABLE IF NOT EXISTS titles_test (id int(11) not null primary key,emp_no int(11) NOT NULL,title varchar(50) NOT NULL,from_date date NOT NULL,to_date date ...

2018-12-21 17:29:27 294

原创 mysql之group_concat函数详解

函数语法:group_concat( [DISTINCT]  要连接的字段   [Order BY 排序字段 ASC/DESC]   [Separator '分隔符'] )下面举例说明:select * from goods;  +------+------+| id| price|+------+------+|1 | 10||1 | 20||1 | 20||2 | ...

2018-12-21 17:22:07 106

原创 创建一个actor表,包含当前实时日期

题目描述创建一个actor表,包含如下列信息列表 类型 是否为NULL 含义 actor_id smallint(5) not null 主键id first_name varchar(45) not null 名字 last_name varchar(45) not null 姓氏 last_upda...

2018-12-20 20:59:10 106

原创 将employees表的所有员工的last_name和first_name拼接起来作为Name

题目描述将employees表的所有员工的last_name和first_name拼接起来作为Name,中间以一个空格区分CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar...

2018-12-20 20:42:42 542

原创 【两次过】Lintcode 460. 在排序数组中找最接近的K个数

给一个目标数 target, 一个非负整数k, 一个按照升序排列的数组 A。在A中找与target最接近的k个整数。返回这k个数并按照与target的接近程度从小到大排序,如果接近程度相当,那么小的数排在前面。样例如果 A =[1, 2, 3], target =2and k =3, 那么返回[2, 1, 3].如果 A =[1, 4, 6, 8], target =3...

2018-12-09 11:23:53 1493

原创 【两次过】Lintcode 63. 搜索旋转排序数组 II

跟进“搜索旋转排序数组”,假如有重复元素又将如何?是否会影响运行时间复杂度?如何影响?为何会影响?写出一个函数判断给定的目标值是否出现在数组中。样例给出[3,4,4,5,7,0,1,2]和target=4,返回 true解题思路:只需要举出能够最坏情况的数据是 [1,1,1,1... 1] 里有一个0即可。在这种情况下是无法使用二分法的,复杂度是O(n) ,因此写个...

2018-12-09 10:04:14 118

原创 【两次过】Lintcode 62. 搜索旋转排序数组

假设有一个排序的按未知的旋转轴旋转的数组(比如,0 1 2 4 5 6 7可能成为4 5 6 7 0 1 2)。给定一个目标值进行搜索,如果在数组中找到目标值返回数组中的索引位置,否则返回-1。你可以假设数组中不存在重复的元素。样例给出[4, 5, 1, 2, 3]和target=1,返回 2给出[4, 5, 1, 2, 3]和target=0,返回 -1挑战O(logN...

2018-12-08 11:26:14 160

原创 【一次过】Lintcode 585. 山脉序列中的最大值

给n个整数的山脉数组,即先增后减的序列,找到山顶(最大值)样例给出数组为[1, 2, 4, 8, 6, 3],返回8给出数组为[10, 9, 8, 7],返回10解题思路:与Lintcode 75. 寻找峰值类似,典型的二分搜索,因为mid的值总会偏向左方,所以大胆l = mid + 1;总会遍历到这个值的。public class Solution { ...

2018-12-07 15:04:31 493

原创 【两次过】Lintcode 75. 寻找峰值

你给出一个整数数组(size为n),其具有以下特点:相邻位置的数字是不同的 A[0] < A[1] 并且 A[n - 2] > A[n - 1]假定P是峰值的位置则满足A[P] > A[P-1]且A[P] > A[P+1],返回数组中任意一个峰值的位置。样例给出数组[1, 2, 1, 3, 4, 5, 7, 6]返回1, 即数值 2 所在位置, 或者6, 即...

2018-12-07 14:47:05 303

原创 【一次过】Lintcode 74. 第一个错误的代码版本

代码库的版本号是从 1 到n的整数。某一天,有人提交了错误版本的代码,因此造成自身及之后版本的代码在单元测试中均出错。请找出第一个错误的版本号。你可以通过isBadVersion的接口来判断版本号 version 是否在单元测试中出错,具体接口详情和调用方法请见代码的注释部分。样例给出n=5调用isBadVersion(3),得到false调用isBadVersion...

2018-12-06 09:58:58 114

原创 【一次过】Lintcode 1243. 字符串中的单词数

计算字符串中的单词数,其中一个单词定义为不含空格的连续字符串。样例样例:输入: "Hello, my name is John"输出: 5注意事项字符串中不包含任何 无法打印 的字符.解题思路:使用空格分割即可。注意过滤掉多余的空格。public class Solution { /** * @param s: a string ...

2018-12-06 09:38:36 151

原创 【两次过】【二分搜索】Lintcode 61. 搜索区间

给定一个包含n个整数的排序数组,找出给定目标值target的起始和结束位置。如果目标值不在数组中,则返回[-1, -1]样例给出[5, 7, 7, 8, 8, 10]和目标值target=8,返回[3, 4]挑战时间复杂度 O(logn)解题思路:看到有序就用二分搜索,注意二分搜索左值和右值在边界处理上不同,特别是搜索右边界时,必须是while(l+1 &...

2018-12-05 09:36:49 221

原创 【一次过】Lintcode 1394. 山羊拉丁文

给定句子S,其由用空格分隔的单词组成。 每个单词仅包含小写和大写字母。我们想将句子转换为“Goat Latin”(一种类似于Pig Latin的伪造语言)。Goat Latin的规则如下:如果一个单词以元音(a,e,i,o或u)开头,则在单词的末尾附加“ma”。例如,“apple”这个词就变成了“applema”。如果一个单词以辅音(即不是元音)开头,则删除第一个字母并追加它到最...

2018-12-04 14:40:41 161

原创 【一次过】Lintcode 1369. 最频繁单词

给定一个段落和一组限定词,返回最频繁的非限定单词。已知至少有一个单词是非限定的,并且答案唯一。限定词都是以小写字母给出,段落中的单词大小写不敏感。结果请返回小写字母。样例输入:paragraph = "Bob hit a ball, the hit BALL flew far after it was hit."banned = ["hit"]输出:"ball"解释:"h...

2018-12-04 14:15:49 374

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除