剑指offer 66题
蓝色D风车
一个向往未来,热爱全世界的良好青年
展开
-
第1题 二维数组中的查找
题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 解决思路: 首先假定题目中二维数组总共有m个长度为n的一维数组,想从这样一个二维数组中找到一个元素是否存在,最暴力最直接解决方式就是把二维数组遍历一遍。。它的时间复杂度为O(mn),显然这...原创 2019-02-22 13:34:21 · 396 阅读 · 0 评论 -
第2题 替换空格
题目描述: 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解决思路: 题意很清楚,就是替换字符串,平常开发中会做的事情,我们通常会用replaceAll()来完成,显然也是行的通的。。 public class Solution { public String rep...原创 2019-02-22 19:11:29 · 347 阅读 · 0 评论 -
第3题 从尾到头打印链表
题目描述: 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 解析思路: 题目意思就是逆序输出一个链表,需要以ArrayList的形式返回,也就是说ArrayList中存储的是逆序后链表中每个节点的值。 第一种思路: 关键在于逆序链表,说到逆序,我们不难想到栈这种数据结构,它的特点就是先进后出。那么问题就很简单了,我们只需要顺序遍历链表,将每个节点的值压入栈(push)中...原创 2019-02-22 21:29:02 · 212 阅读 · 0 评论