15. 二进制中1的个数 题意:面试题15. 二进制中1的个数 思路:使用位操作,每次计算给定数字的某一个二进制位上是否为1。由于1的二进制表示中,只有末位为1,其余位均为0,所以将给定的数与1进行按位与操作,即可判断其末位上的二进制位是否为1。 public class Solution { // ...
分类:
其他好文 时间:
2020-07-19 23:18:47
阅读次数:
67
05. 替换空格 题意:面试题05. 替换空格 思路:题目要求将空格字符‘ ’替换为‘20%’,即将一个字符替换为三个。我们可以先遍历一遍字符串,统计出字符串中空格的个数count,根据这个数字可以计算出: \[ 替换之后字串的长度 = 原字串长度 + 2 * count \] 然后从后向前,依次将 ...
分类:
其他好文 时间:
2020-07-19 23:18:00
阅读次数:
76
43. 1~n整数中1出现的次数 题意:面试题43. 1~n整数中1出现的次数 思路:找规律。每一位digit上的1出现的次数只与:它前面的数字high、它后面的数字low、当前位的因数$10^$相关。 分情况讨论: 1)第i位上的数字 == 0。1~n中,这一位上1出现的次数只与高位有关。(例如2 ...
分类:
其他好文 时间:
2020-07-19 23:17:43
阅读次数:
55
Leetcode上新加入了剑指 offer板块,最近准备这些题重新做一遍,温故知新。后续会将所有的解题思路和代码收录到这里,并将这些题做分类,便于以后查阅。 数组 剑指 offer——数组篇 字符串 剑指 offer——字符串篇 链表、栈与队列 剑指 offer——链表、栈与队列篇 树与图 剑指 o ...
分类:
其他好文 时间:
2020-07-19 23:09:15
阅读次数:
57
https://leetcode-cn.com/problems/lian-xu-zi-shu-zu-de-zui-da-he-lcof/ 1、题目描述: 输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为O(n)。 2、示 ...
分类:
编程语言 时间:
2020-07-19 18:09:51
阅读次数:
388
力扣链接:https://leetcode-cn.com/problems/dui-lie-de-zui-da-zhi-lcof/ 题目描述 请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的均摊时间复杂度都是 ...
分类:
其他好文 时间:
2020-07-18 00:40:15
阅读次数:
67
102-二叉树的层序遍历 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 题目分析 此题类似于《剑指offer》的第32题 层序遍历二叉树是指对二叉树每一层从左到右进行访问。 非叶子节点 对于每一层的非叶子节点,都有两个子节点。在层序遍历时,上一层非叶子 ...
分类:
其他好文 时间:
2020-07-17 16:15:17
阅读次数:
50
【题目】 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个升序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 数组可能包含重复项。 注意:数组内所含元素非负,若数组大小为0,请返回-1。 ...
分类:
编程语言 时间:
2020-07-15 23:26:11
阅读次数:
67
【题目】 给定一棵二叉树的其中一个节点,请找出中序遍历序列的下一个节点。 注意: 如果给定的节点是中序遍历序列的最后一个,则返回空节点; 二叉树一定不为空,且给定的节点一定不是空节点; 样例 假定二叉树是:[2, 1, 3, null, null, null, null], 给出的是值等于2的节点。 ...
分类:
其他好文 时间:
2020-07-15 22:53:47
阅读次数:
59
【题目】 给定一个长度为 n+1 的数组nums,数组中所有的数均在 1~n 的范围内,其中 n≥1。 请找出数组中任意一个重复的数,但不能修改输入的数组。 样例 给定 nums = [2, 3, 5, 4, 3, 2, 6, 7]。 返回 2 或 3。 思考题:如果只能使用 O(1) 的额外空间, ...
分类:
编程语言 时间:
2020-07-14 18:22:59
阅读次数:
53