![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
offer必刷题
PennykkLu
生命不息,学习不止
展开
-
牛客网_剑指Offer_02_替换空格
一、题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。二、思路1.(空间换时间)首先将StringBuffer类型转成String类型,然后再转成char数组,最后浪费一倍空间来保存拼接结果。public class Solution { public String ...原创 2019-01-04 11:06:31 · 103 阅读 · 0 评论 -
牛客网_剑指Offer_03_逆序打印链表
一、题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* this.val = val;* }* }...原创 2019-01-04 11:52:36 · 142 阅读 · 0 评论 -
牛客网_剑指Offer_04_前序中序重建二叉树
一、题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。/** * Definition for binary tree * public class TreeNode { * int va...原创 2019-01-04 13:31:16 · 190 阅读 · 0 评论 -
牛客网_剑指Offer_05_用两个栈实现队列
一、题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。二、思路以第一个栈stack1为队尾(入队),以第二个栈stack2为队首(出队):入队:只要stack1不满,即可入队,即向栈1压入一个元素。出队:如果栈2为空,先把栈1全部依次出栈并进入到栈2中,再从栈2中弹出,如果栈2不空,则直接从栈2中弹出。import java.util.Stac...原创 2019-01-04 14:32:58 · 94 阅读 · 0 评论 -
牛客网_剑指Offer_01_二维数组中的查找
一、题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。二、思路1.(暴力法)一行一行地找,找到目标则返回,当遇到比目标值大的数,则转到下一行继续查找。可以把每一行当成有序表,使用二分法进行查找,本题未使用public class Soluti...原创 2019-01-03 14:38:52 · 88 阅读 · 0 评论