BestQiang
BestQiang
全部文章
剑指offer
Hexo(3)
javaweb(10)
java语言(36)
JVM(3)
LeetCode(5)
Netty(1)
Nginx(1)
NIO(2)
web前端(5)
分布式文件系统(1)
各种bug处理(11)
名词科普(1)
并发编程(2)
操作系统-linux(5)
操作系统-windows(4)
数据结构(14)
未归档(2)
生活杂记(1)
算法(2)
设计模式(2)
跨域问题(1)
运维(2)
题解(2)
归档
标签
去牛客网
登录
/
注册
BestQiang的博客
To be or not to be,thats a question.
全部文章
/ 剑指offer
(共9篇)
剑指offer 29.最小的K个数(优先队列解决法)
时间限制:1秒 空间限制:32768K 本题知识点: 数组 题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 思路: 我考虑用最大堆来实现(java自带默认最大堆)可以全部入堆,再出k个元素,即可,但这样会浪...
2019-04-08
0
597
剑指offer 15.反转链表
时间限制:1秒 空间限制:32768K 题目描述 输入一个链表,反转链表后,输出新链表的表头。 思路: 利用递归解决即可,首先考虑两个节点的情况,将头结点的next指针指向的节点进行反转,然后,将头结点的next指针置空,放到反转后的next节点尾部即可 /* public class L...
2019-03-31
0
435
剑指offer 16.合并两个排序的链表
时间限制:1秒 空间限制:32768K 本题知识点: 链表 题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 思路: 利用递归进行解决,先比较两个链表头结点的大小,将较大的节点作为头结点,然后该节点的next后的节点与另一个链表合并后,放...
2019-03-31
0
461
剑指offer 9.变态跳台阶
时间限制:1秒 空间限制:32768K 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路: 因为n级台阶,第一步有n种跳法:跳1级、跳2级、到跳n级 跳1级,剩下n-1级,则剩下跳法是f(n-1) 跳2级,剩下n-...
2019-03-31
0
454
剑指offer 8.跳台阶
时间限制:1秒 空间限制:32768K 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 思路: 典型的斐波那契算法思路, 1.假设当有n个台阶时假设有f(n)种走法。 2.青蛙最后一步要么跨1个台阶要么跨2个台阶...
2019-03-31
0
338
剑指offer 6.旋转数组的最小数字
时间限制:3秒 空间限制:32768K 本题知识点: 查找 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE...
2019-03-31
0
445
剑指offer 4.重建二叉树
时间限制:1秒 空间限制:32768K 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路...
2019-03-31
0
384
剑指offer 3.从尾到头打印链表
时间限制:1秒 空间限制:32768K 本题知识点: 链表 题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 思路: 将链表存在栈中,先遍历链表进行入栈,然后出栈,实现从尾到头返回 /** * public class ListNode { * int val; ...
2019-03-31
0
494
剑指offer 2.替换空格
时间限制:1秒 空间限制:32768K 本题知识点: 字符串 题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 思路:简单粗暴的字符串替换 public class Solut...
2019-03-31
0
405