《剑指Offer》数组中的重复数字
题目1:数组中的重复数字
在一个长度为 n 的数组里的所有数字都在 0~n-1 的范围内。数组中的某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。 找出数组中任意一个重复的数字。 例如,如果输入长度为 7 的数组 {2,3,1,0,2,5,3} ,那么对应的输出是重复的数字2或者3。
示例 1:
1 | 输入:documents = [2, 5, 3, 0, 5, 0] |
在一个长度为 n 的数组里的所有数字都在 0~n-1 的范围内。数组中的某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。 找出数组中任意一个重复的数字。 例如,如果输入长度为 7 的数组 {2,3,1,0,2,5,3} ,那么对应的输出是重复的数字2或者3。
示例 1:
1 | 输入:documents = [2, 5, 3, 0, 5, 0] |
1 | $ node --version |
顺带更新npm(需要到官网找到对应node版本的npm版本升级)
1 | $ npm --version |
由于我的版本和最新的差距太大,索性直接把整个文件夹铲了重新建站。 注意:记得保存原仓库的副本,主要是_post/
和*.yml
文件。 首先是重新安装最新的Hexo:
1 | $ cnpm install hexo-cli -g |
对于新版本的next主题可以使用npm方式直接安装了:
1 | $ cnpm install hexo-theme-next |
themes/next
目录下:1 | $ git clone https://github.com/next-theme/hexo-theme-next themes/next |
_config.yml
,修改其中的主题为theme: next
。此时,博客的next主题就安装成功了。1 | $ hexo version |
npm update
进行更新。给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。
注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
示例 1:
1 | 输入: [7,1,5,3,6,4] |
1 | 输入: [1,2,3,4,5] |
示例 3:
1 | 输入: [7,6,4,3,1] |
提示: 1 <= prices.length <= 3 * 10 ^ 4
0 <= prices[i] <= 10 ^ 4
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组 并在使用 O(1)额外空间的条件下完成。
示例1:
1 | 给定数组 nums = [1,1,2], |
示例2:
1 | 给定 nums = [0,0,1,1,1,2,2,3,3,4], |
这里用的Spring版本
1 | <dependency> |
1 | <dependency> |
之前自己学习了一下RMQ的使用,一直没有时间整理,现在抽空整理一下笔记。
1.RabbitMQ简介和安装 这块主要是一个RabbitMQ所包含的内部元素的介绍(交换机、队列等等)。
2.原生Java客户端的使用 重要,主要理解是这一块。弄懂了原生的使用,基本上遇到问题也都能解决了。
2020-9-24 注:这边考虑了一下,模块1和模块2结合在一起比较好,所以总的就分两部分吧。
3.与Spring集成 其实就是把上一部分进行了封装,理解的话需要Spring相关知识,比如Bean的初始化,自动注入。使用比较无脑,cv就行。
给定两个大小为 m 和 n 的有序数组 nums1
和 nums2
。
请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 \(O(log(m + n))\)。
你可以假设 nums1
和 nums2
不会同时为空。
示例 1:
1 | nums1 = [1, 3] |
则中位数是 2.0
示例 2:
1 | nums1 = [1, 2] |
则中位数是 (2 + 3)/2 = 2.5
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
示例 1:
1 | 输入: "abcabcbb" |
示例 2:
1 | 输入: "bbbbb" |
示例 3:
1 | 输入: "pwwkew" |