剑指Offer
文章平均质量分 63
平行宇宙i
self-discipline;
你不会永远年轻,但永远有人年轻;
你不会永远是应届生,但永远有人是应届生。
展开
-
《剑指Offer》数组--二维数组中的查找
时间限制:1秒 空间限制:32768K 热度指数:872538本题知识点: 查找题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路1:把每一行看成递增有序的数列,利用二分查找,通过遍历每一行得到答案,时间复杂度是nlogn...原创 2018-12-23 18:25:04 · 81 阅读 · 0 评论 -
数据库SQL实战-- 获取员工其当前的薪水比其manager当前薪水还高的相关信息
时间限制:1秒 空间限制:32768K 热度指数:23267题目描述获取员工其当前的薪水比其manager当前薪水还高的相关信息,当前表示to_date='9999-01-01',结果第一列给出员工的emp_no,第二列给出其manager的manager_no,第三列给出该员工当前的薪水emp_salary,第四列给该员工对应的manager当前的薪水manager_salary...原创 2019-01-04 15:15:08 · 464 阅读 · 0 评论 -
数据库SQL实战-- 汇总各个部门当前员工的title类型的分配数目
时间限制:1秒 空间限制:32768K 热度指数:24753题目描述汇总各个部门当前员工的title类型的分配数目,结果给出部门编号dept_no、dept_name、其当前员工所有的title以及该类型title对应的数目countCREATE TABLE `departments` (`dept_no` char(4) NOT NULL,`dept_name` varchar(4...原创 2019-01-04 15:36:10 · 272 阅读 · 0 评论 -
《剑指Offer》代码的鲁棒性--链表中倒数第k个结点
时间限制:1秒 空间限制:32768K 热度指数:512101本题知识点: 链表题目描述输入一个链表,输出该链表中倒数第k个结点。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/pu...原创 2018-12-25 19:17:49 · 99 阅读 · 0 评论 -
数据库SQL实战--给出每个员工每年薪水涨幅超过5000的员工编号emp_no
时间限制:1秒 空间限制:32768K 热度指数:15820题目描述给出每个员工每年薪水涨幅超过5000的员工编号emp_no、薪水变更开始日期from_date以及薪水涨幅值salary_growth,并按照salary_growth逆序排列。提示:在sqlite中获取datetime时间对应的年份函数为strftime('%Y', to_date)CREATE TABLE `...原创 2019-01-05 10:06:11 · 853 阅读 · 0 评论 -
数据库SQL实战- 删除emp_no重复的记录,只保留最小的id对应的记录。
时间限制:1秒 空间限制:32768K 热度指数:7406题目描述删除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_da...原创 2019-01-05 10:13:21 · 899 阅读 · 1 评论 -
数据库SQL实战--替换数据
时间限制:1秒 空间限制:32768K 热度指数:6577题目描述将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005,其他数据保持不变,使用replace实现。CREATE TABLE IF NOT EXISTS titles_test (id int(11) not null primary key,emp_no int(11) NOT NUL...原创 2019-01-05 10:23:21 · 4721 阅读 · 0 评论 -
数据库SQL实战-- 查找描述信息中包括robot的电影对应的分类名称以及电影数目
时间限制:1秒 空间限制:32768K 热度指数:29047题目描述film表 字段 说明 film_id 电影id title 电影名称 description 电影描述信息 CREATE TABLE IF NOT...原创 2019-01-05 10:31:41 · 1376 阅读 · 0 评论 -
数据库SQL实战--使用join查询方式找出没有分类的电影id以及名称
时间限制:1秒 空间限制:32768K 热度指数:11697题目描述film表 字段 说明 film_id 电影id title 电影名称 description 电影描述信息 CREATE TABLE IF NOT...原创 2019-01-05 10:42:25 · 1123 阅读 · 0 评论 -
《剑指Offer》代码的鲁棒性--反转链表
时间限制:1秒 空间限制:32768K 热度指数:373811本题知识点: 链表题目描述输入一个链表,反转链表后,输出新链表的表头。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/p...原创 2019-01-01 16:27:06 · 95 阅读 · 0 评论 -
数据库SQL实战--查找最晚入职员工的所有信息
时间限制:1秒 空间限制:32768K 热度指数:94293题目描述查找最晚入职员工的所有信息CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar(16) NOT NUL...原创 2019-01-03 10:04:28 · 292 阅读 · 2 评论 -
数据库SQL实战--查找入职员工时间排名倒数第三的员工所有信息
时间限制:1秒 空间限制:32768K 热度指数:79163题目描述查找入职员工时间排名倒数第三的员工所有信息CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar(16)...原创 2019-01-03 11:19:21 · 284 阅读 · 0 评论 -
数据库SQL实战-- 查找各个部门当前领导当前薪水详情以及其对应部门编号dept_no
时间限制:1秒 空间限制:32768K 热度指数:169623题目描述查找各个部门当前(to_date='9999-01-01')领导当前薪水详情以及其对应部门编号dept_noCREATE TABLE `dept_manager` (`dept_no` char(4) NOT NULL,`emp_no` int(11) NOT NULL,`from_date` date NOT ...原创 2019-01-03 11:31:59 · 331 阅读 · 0 评论 -
数据库SQL实战--查找所有已经分配部门的员工的last_name和first_name
时间限制:1秒 空间限制:32768K 热度指数:83238题目描述查找所有已经分配部门的员工的last_name和first_nameCREATE TABLE `dept_emp` (`emp_no` int(11) NOT NULL,`dept_no` char(4) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT ...原创 2019-01-03 11:46:02 · 287 阅读 · 0 评论 -
数据库SQL实战--查找所有员工的last_name和first_name以及对应部门编号dept_no
时间限制:1秒 空间限制:32768K 热度指数:58417题目描述查找所有员工的last_name和first_name以及对应部门编号dept_no,也包括展示没有分配具体部门的员工CREATE TABLE `dept_emp` (`emp_no` int(11) NOT NULL,`dept_no` char(4) NOT NULL,`from_date` date NOT ...原创 2019-01-03 11:51:43 · 877 阅读 · 0 评论 -
数据库SQL实战-- 查找所有员工入职时候的薪水情况
时间限制:1秒 空间限制:32768K 热度指数:79011题目描述查找所有员工入职时候的薪水情况,给出emp_no以及salary, 并按照emp_no进行逆序CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NUL...原创 2019-01-03 12:07:14 · 585 阅读 · 0 评论 -
《剑指Offer》代码的完整性--调整数组顺序使奇数位于偶数前面
时间限制:1秒 空间限制:32768K 热度指数:366510本题知识点: 数组题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。思路:遍历数组中的所有数,判断为奇数的,添加到list中,然后再遍历数组中的所有数,为偶数的,加到list中,这样就实现了奇...原创 2018-12-25 08:58:53 · 88 阅读 · 0 评论 -
数据库SQL实战--对所有员工的当前薪水按照salary进行按照1-N的排名
时间限制:1秒 空间限制:32768K 热度指数:29156题目描述对所有员工的当前(to_date='9999-01-01')薪水按照salary进行按照1-N的排名,相同salary并列且按照emp_no升序排列CREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int(11) NOT NULL,`from_d...原创 2019-01-04 11:10:39 · 614 阅读 · 0 评论 -
数据库SQL实战-- 查找所有员工自入职以来的薪水涨幅情况
时间限制:1秒 空间限制:32768K 热度指数:47763题目描述查找所有员工自入职以来的薪水涨幅情况,给出员工编号emp_no以及其对应的薪水涨幅growth,并按照growth进行升序CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varch...原创 2019-01-04 10:20:04 · 707 阅读 · 0 评论 -
《剑指Offer》 字符串--替换空格
时间限制:1秒 空间限制:32768K 热度指数:762376本题知识点: 字符串题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。方法1:public class Solution { public String replaceSpace(StringB...原创 2018-12-23 18:55:38 · 133 阅读 · 0 评论 -
《剑指Offer》链表--从尾到头打印链表
时间限制:1秒 空间限制:32768K 热度指数:681780本题知识点: 链表题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。思路:从尾到头打印链表首先想到的是利用栈的性质:先进后出,在此注意,写完代码,一定要导Stack包/*** public class ListNode {* int val;* Lis...原创 2018-12-23 19:42:04 · 60 阅读 · 0 评论 -
《剑指Offer》树--重建二叉树
时间限制:1秒 空间限制:32768K 热度指数:477379题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:根据前序和中序生成一个二叉树的时候,首先确定的是,前序的第一个即为二叉树...原创 2018-12-23 20:21:54 · 100 阅读 · 0 评论 -
《剑指Offer》栈和队列--用两个栈实现队列
时间限制:1秒 空间限制:32768K 热度指数:317529本题知识点: 队列 栈题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:首先需要清楚的是,栈的特点是:先进后出;队列的特点是:先进先出举个例子,不失一般性,PUSH1,PUSH2,PUSH3,POP,POP,PUSH4,POP,PUSH5,POP,POP,该例子队列...原创 2018-12-23 20:55:23 · 96 阅读 · 0 评论 -
《剑指Offer》 查找和排序--旋转数组的最小数字
时间限制:3秒 空间限制:32768K 热度指数:437662本题知识点: 查找题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。这个题的关键是:非减...原创 2018-12-23 21:31:41 · 77 阅读 · 0 评论 -
《剑指Offer》递归和循环--斐波那契数列
时间限制:1秒 空间限制:32768K 热度指数:415020题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39思路1:用递归public class Solution { public int Fibonacci(int n) { if(n == 0) ...原创 2018-12-23 21:41:08 · 115 阅读 · 0 评论 -
《剑指Offer》递归和循环--跳台阶
时间限制:1秒 空间限制:32768K 热度指数:320390题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。思路:找规律的方法,f(1) = 1, f(2) = 2, f(3) = 3, f(4) = 5, 可以总结出f(n) = f(n-1) + f(n-2)的规律,但是为什么会出现这样的规律呢?假...原创 2018-12-24 16:30:10 · 102 阅读 · 0 评论 -
《剑指Offer》递归和循环--变态跳台阶
时间限制:1秒 空间限制:32768K 热度指数:253078本题知识点: Java工程师 C++工程师 iOS工程师 安卓工程师 运维工程师 前端工程师 算法工程师 PHP工程师 测试工程师 安全工程师 c#工程师 数据库工程师 大数据工程师 数据分析师 游戏工程师题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。...原创 2018-12-24 18:31:21 · 85 阅读 · 0 评论 -
数据库SQL实战-- 找出所有员工当前具体的薪水salary情况
时间限制:1秒 空间限制:32768K 热度指数:39475题目描述找出所有员工当前(to_date='9999-01-01')具体的薪水salary情况,对于相同的薪水只显示一次,并按照逆序显示CREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int(11) NOT NULL,`from_date` date ...原创 2019-01-04 08:43:57 · 1520 阅读 · 0 评论 -
数据库SQL实战--获取所有非manager的员工emp_no
时间限制:1秒 空间限制:32768K 热度指数:45856题目描述获取所有非manager的员工emp_noCREATE TABLE `dept_manager` (`dept_no` char(4) NOT NULL,`emp_no` int(11) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT NULL,PRI...原创 2019-01-04 08:45:06 · 195 阅读 · 0 评论 -
数据库SQL实战-- 获取所有员工当前的manager
时间限制:1秒 空间限制:32768K 热度指数:53725题目描述获取所有员工当前的manager,如果当前的manager是自己的话结果不显示,当前表示to_date='9999-01-01'。结果第一列给出当前员工的emp_no,第二列给出其manager对应的manager_no。CREATE TABLE `dept_emp` (`emp_no` int(11) NOT NU...原创 2019-01-04 08:45:58 · 229 阅读 · 0 评论 -
数据库SQL实战-- 获取所有部门中当前员工薪水最高的相关信息
时间限制:1秒 空间限制:32768K 热度指数:61573题目描述获取所有部门中当前员工薪水最高的相关信息,给出dept_no, emp_no以及其对应的salaryCREATE TABLE `dept_emp` (`emp_no` int(11) NOT NULL,`dept_no` char(4) NOT NULL,`from_date` date NOT NULL,`to...原创 2019-01-04 08:46:59 · 1954 阅读 · 0 评论 -
数据库SQL实战-- 从titles表获取按照title进行分组,注意对于重复的emp_no进行忽略。
时间限制:1秒 空间限制:32768K 热度指数:29438题目描述从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t。注意对于重复的emp_no进行忽略。CREATE TABLE IF NOT EXISTS "titles" (`emp_no` int(11) NOT NULL,`title` varchar(50) NOT NULL,...原创 2019-01-04 08:48:06 · 174 阅读 · 0 评论 -
《剑指Offer》递归和循环--矩形覆盖
时间限制:1秒 空间限制:32768K 热度指数:228315题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?思路:根据找规律得:n=1时,1种;n=2时,2种;n=3时,3种;n=4时,5种;观察得:n=1时,1种;n=2,2种;n>2时,f(n-1)+f(n-2)第一种方法:...原创 2018-12-24 19:46:20 · 117 阅读 · 0 评论 -
《剑指Offer》位运算--二进制中1的个数
时间限制:1秒 空间限制:32768K 热度指数:304381题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。知识点:1、计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号...原创 2018-12-24 21:28:56 · 116 阅读 · 0 评论 -
《剑指Offer》代码的完整性--数值的整数次方
时间限制:1秒 空间限制:32768K 热度指数:313563题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方public class Solution { public double Power(double base, int exponent) { double result = 0; ...原创 2018-12-24 21:43:38 · 100 阅读 · 0 评论 -
数据库SQL实战--查找当前薪水排名第二多的员工编号emp_no
时间限制:1秒 空间限制:32768K 热度指数:44445题目描述查找当前薪水(to_date='9999-01-01')排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不准使用order byCREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date N...原创 2019-01-04 09:34:18 · 1205 阅读 · 0 评论 -
数据库SQL实战--查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数t
时间限制:1秒 空间限制:32768K 热度指数:45949题目描述查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数tCREATE TABLE `salaries` (`emp_no` int(11) NOT NULL,`salary` int(11) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT NUL...原创 2019-01-03 12:15:47 · 334 阅读 · 0 评论