剑指Offer(第2版)
程序员大魔王
努力学大数据的小菜鸟
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《剑指Offer(第2版)》-06-从尾到头打印链表
题目描述 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10000 题解 /** * Definition for singly-linked list. * public class ListNode { * int val; * ...原创 2020-03-04 00:00:52 · 1061 阅读 · 0 评论 -
《剑指Offer(第2版)》-05-替换空格
题目描述 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 1: 输入:s = “We are happy.” 输出:“We%20are%20happy.” 限制: 0 <= s 的长度 <= 10000 题解 //思路就是把字符串转化为字符数组,然后再按照规则拼接起来 class Solution { public String replaceSpace...原创 2020-03-03 23:36:46 · 1004 阅读 · 0 评论 -
《剑指Offer(第2版)》-04-二维数组中的查找
方法一:暴力 如果不考虑二维数组排好序的特点,则直接遍历整个二维数组的每一个元素,判断目标值是否在二维数组中存在。 依次遍历二维数组的每一行和每一列。如果找到一个元素等于目标值,则返回 true。如果遍历完毕仍未找到等于目标值的元素,则返回 false。 class Solution { public boolean findNumberIn2DArray(int[][] matrix, ...转载 2020-03-03 00:19:38 · 1113 阅读 · 0 评论 -
《剑指Offer(第2版)》-03-数组中重复的数字
刚开始刷题,一定要先自己想,然后再看别人的题解思路,然后慢慢优化 方法一:哈希表(最自然,但是要额外空间) 最容易想到用哈希表判重,这种方法是最自然的。 特别地,在数组的长度不超过32的时候,使用位运算的技巧可以实现 O(1)空间复杂度判重,但是这道题不是回溯算法的问题,题目给出的测试用例的长度肯定不止32位,因此,不建议使用位运算的技巧。 分析:这种方法不修改原始数组,但是使用了O(N)空间,使...转载 2020-03-02 13:20:17 · 1044 阅读 · 0 评论
分享