
刷刷题
LeetCode、剑指Offer
Hello_GY
有在认真生活✌️
展开
-
编程理解——判断IP
IP地址的表示一般为A.B.C.D,一共四个数字和三个点号,其中ABCD都是0~255之间的数字。1、要求判断一个字符串是不是合法的IP地址。这个字符串的长度应该大于等于7,小于等于15。字符串必须要能分成四部分,而且每部分都是数字字符,分隔符号是点号。以下是自己的代码:#include <iostream>#include <string>using n...转载 2018-09-02 15:39:18 · 728 阅读 · 0 评论 -
195. 第十行
给定一个文本文件 file.txt,请只打印这个文件中的第十行。示例:假设 file.txt 有如下内容:Line 1Line 2Line 3Line 4Line 5Line 6Line 7Line 8Line 9Line 10你的脚本应当显示第十行:Line 10说明:1. 如果文件少于十行,你应当输出什么?2. 至少有三种不同的解法,请尝试...原创 2018-08-03 08:52:29 · 1313 阅读 · 0 评论 -
192. 统计词频
写一个 bash 脚本以统计一个文本文件 words.txt 中每个单词出现的频率。为了简单起见,你可以假设:words.txt只包括小写字母和 ' ' 。 每个单词只由小写字母组成。 单词间由一个或多个空格字符分隔。示例:假设 words.txt 内容如下:the day is sunny the thethe sunny is is你的脚本应当输出(以词频降序排...原创 2018-08-03 08:52:16 · 1109 阅读 · 0 评论 -
595. 大的国家
这里有张 World 表+-----------------+------------+------------+--------------+---------------+| name | continent | area | population | gdp |+-----------------+------------...原创 2018-08-03 08:52:03 · 400 阅读 · 0 评论 -
262. 行程和用户
Trips 表中存所有出租车的行程信息。每段行程有唯一健 Id,Client_Id 和 Driver_Id 是 Users 表中 Users_Id 的外键。Status 是枚举类型,枚举成员为 (‘completed’, ‘cancelled_by_driver’, ‘cancelled_by_client’)。+----+-----------+-----------+---------+...原创 2018-08-03 08:51:45 · 750 阅读 · 0 评论 -
596. 超过5名学生的课
有一个courses 表 ,有: student (学生) 和 class (课程)。请列出所有超过或等于5名学生的课。例如,表:+---------+------------+| student | class |+---------+------------+| A | Math || B | English || C...原创 2018-08-03 08:51:26 · 310 阅读 · 0 评论 -
194. 转置文件
给定一个文件 file.txt,转置它的内容。你可以假设每行列数相同,并且每个字段由 ' ' 分隔.示例:假设 file.txt 文件内容如下:name agealice 21ryan 30应当输出:name alice ryanage 21 30 awk '{ for (i = 1; i <= NF; ++i) { ...原创 2018-08-03 08:50:52 · 1022 阅读 · 0 评论 -
197. 上升的温度
给定一个 Weather 表,编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 Id。+---------+------------------+------------------+| Id(INT) | RecordDate(DATE) | Temperature(INT) |+---------+------------------+--------...原创 2018-08-02 11:11:02 · 318 阅读 · 0 评论 -
601. 体育馆的人流量
X 市建了一个新的体育馆,每日人流量信息被记录在这三列信息中:序号 (id)、日期 (date)、 人流量 (people)。请编写一个查询语句,找出高峰期时段,要求连续三天及以上,并且每天人流量均不少于100。例如,表 stadium:+------+------------+-----------+| id | date | people |+-----...原创 2018-08-02 10:57:01 · 814 阅读 · 0 评论 -
620. 有趣的电影
某城市开了一家新的电影院,吸引了很多人过来看电影。该电影院特别注意用户体验,专门有个 LED显示板做电影推荐,上面公布着影评和相关电影描述。作为该电影院的信息部主管,您需要编写一个 SQL查询,找出所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片,结果请按等级 rating 排列。例如,下表 cinema:+---------+-----------+----...原创 2018-08-02 10:47:58 · 244 阅读 · 0 评论 -
626. 换座位
小美是一所中学的信息科技老师,她有一张 seat 座位表,平时用来储存学生名字和与他们相对应的座位 id。其中纵列的 id 是连续递增的小美想改变相邻俩学生的座位。你能不能帮她写一个 SQL query 来输出小美想要的结果呢? 示例:+---------+---------+| id | student |+---------+---------+| ...原创 2018-08-02 10:41:02 · 575 阅读 · 0 评论 -
196. 删除重复的电子邮箱
编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。+----+------------------+| Id | Email |+----+------------------+| 1 | john@example.com || 2 | bob@example.com || 3 | john@...原创 2018-08-02 10:12:52 · 755 阅读 · 0 评论 -
183. 从不订购的客户
某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。Customers 表:+----+-------+| Id | Name |+----+-------+| 1 | Joe || 2 | Henry || 3 | Sam || 4 | Max |+----+-------+Or...原创 2018-08-02 09:47:42 · 368 阅读 · 0 评论 -
182. 查找重复的电子邮箱
编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。示例:+----+---------+| Id | Email |+----+---------+| 1 | a@b.com || 2 | c@d.com || 3 | a@b.com |+----+---------+根据以上输入,你的查询应返回以下结果:+---------+| E...原创 2018-08-02 09:41:42 · 596 阅读 · 0 评论 -
181. 超过经理收入的员工
Employee 表包含所有员工,他们的经理也属于员工。每个员工都有一个 Id,此外还有一列对应员工的经理的 Id。+----+-------+--------+-----------+| Id | Name | Salary | ManagerId |+----+-------+--------+-----------+| 1 | Joe | 70000 | 3 ...原创 2018-08-02 09:33:51 · 376 阅读 · 0 评论 -
180. 连续出现的数字
编写一个 SQL 查询,查找所有至少连续出现三次的数字。+----+-----+| Id | Num |+----+-----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 1 || 6 | 2 || 7 | 2 |+----+-----+例如,给定上面的 Logs 表, 1 是唯一连续...原创 2018-08-02 09:21:47 · 355 阅读 · 0 评论 -
178. 分数排名
编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。+----+-------+| Id | Score |+----+-------+| 1 | 3.50 || 2 | 3.65 || 3 | 4.00 || 4 | 3.85 || 5 ...原创 2018-08-02 09:11:25 · 704 阅读 · 0 评论 -
177. 第N高的薪水
编写一个 SQL 查询,获取 Employee 表中第 n 高的薪水(Salary)。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述 Employee 表,n = 2 时,应返回第二高的薪水 200。如果...原创 2018-08-02 09:03:26 · 897 阅读 · 0 评论 -
求一个字符串中连续出现次数最多的子串
首先获得后缀数组,然后1.第一行第一个字符a,与第二行第一个字符b比较,不等,则2.第一行前两个字符ab,与第三行前两个字符cb比较,不等,则3.第一行前三个字符abc,与第四行前三个字符bcb比较,不等,则4.第一行前四个......上述过程就相当于在原始字符串中,第一趟,a与b比较,ab与cb比较,abc与bcb比较,abcb与cbca比较,abcbc与bcabc比较,abcbcb...原创 2018-07-02 18:55:30 · 1871 阅读 · 0 评论 -
LeetCode 4. 两个排序数组的中位数
描述:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 。请找出这两个有序数组的中位数。要求算法的时间复杂度为 O(log (m+n)) 。示例 1:nums1 = [1, 3]nums2 = [2]中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]中位数是 (2 + 3)/2 = 2.5思路:本题若没有限制时间复杂度为O(log(m...原创 2018-06-10 15:51:04 · 355 阅读 · 0 评论 -
184. 部门工资最高的员工
Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。+----+-------+--------+--------------+| Id | Name | Salary | DepartmentId |+----+-------+--------+--------------+| 1 | Joe | 70000 | ...原创 2018-05-13 22:13:58 · 6303 阅读 · 0 评论 -
185. 部门工资前三高的员工
Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id 。+----+-------+--------+--------------+| Id | Name | Salary | DepartmentId |+----+-------+--------+--------------+| 1 | Joe | 70000 |...原创 2018-05-13 21:37:14 · 7703 阅读 · 7 评论 -
627. 交换工资
给定一个 salary表,如下所示,有m=男性 和 f=女性的值 。交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求使用一个更新查询,并且没有中间临时表。例如:| id | name | sex | salary ||----|------|-----|--------|| 1 | A | m | 2500 || 2 | B | f |...原创 2018-05-13 21:11:38 · 741 阅读 · 0 评论 -
176. 第二高的薪水
编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果...原创 2018-05-13 20:51:32 · 4832 阅读 · 0 评论 -
175. 组合两个表
表1: Person+-------------+---------+| 列名 | 类型 |+-------------+---------+| PersonId | int || FirstName | varchar || LastName | varchar |+-------------+---------+PersonI...原创 2018-05-13 20:30:21 · 470 阅读 · 0 评论 -
LeetCode 473. 火柴拼正方形
还记得童话《卖火柴的小女孩》吗?现在,你知道小女孩有多少根火柴,请找出一种能使用所有火柴拼成一个正方形的方法。不能折断火柴,可以把火柴连接起来,并且每根火柴都要用到。输入为小女孩拥有火柴的数目,每根火柴用其长度表示。输出即为是否能用所有的火柴拼成正方形。示例 1:输入: [1,1,2,2,2]输出: true解释: 能拼成一个边长为2的正方形,每边两根火柴。示例 2:输入: [3,3,3,...原创 2018-05-10 22:20:29 · 2705 阅读 · 0 评论 -
leetcode 2. 两数相加
题目: 给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。示例: 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8 原因:342 + 465 = 807 分析: 大数相加问题,...原创 2018-05-07 17:40:31 · 115 阅读 · 0 评论 -
leetcode 1:两数之和
题目:两数之和给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]#include <iostream>#include <vector>...原创 2018-05-07 11:45:46 · 134 阅读 · 0 评论