Leetcode 15:三数之和
Leetcode 15:三数之和
题目描述
给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。
**注意:**答案中不可以包含重复的三元组。
示例
示例 1:
输入:nums = [-1,0,1,2,-1,-4]
输出:[[-1,-1,2],[-1,0,1]]
示例 2:
输入:nums = []
输出:[]
示例 3:
输入:nums = [0]
输出:[]
提示:
0 <= nums.length <= 3000
-105 <= nums[i] <= 105
解题思路
这道题的主要难点在于怎么去重。
我们可以从以下几个方面去思考:
特判数组为空或者个数小于3的情况
首先我们需要对数组进行排序,然后遍历每一个数 nums[i] 。然后再设置 left 和 right 指针, 并且用 left = i + 1和right = nums.size() - 1赋值。然后 left 指针向右,right 指针向左搜寻答案。
在遍历 nums[i] ...
Leetcode14. 最长公共前缀
Leetcode14. 最长公共前缀
题目描述
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1:
12输入:strs = ["flower","flow","flight"]输出:"fl"
示例 2:
123输入:strs = ["dog","racecar","car"]输出:""解释:输入不存在公共前缀。
提示:
1 <= strs.length <= 200
0 <= strs[i].length <= 200
strs[i] 仅由小写英文字母组成
解题思路
这道题可以有两种思路来思考。一种思路是先完成一个求两个字符串之间公共前缀的函数,继而在数组里依次两两求彼此的公共前缀,这样最终可以得到所有元素的公共前缀;另一种思路是直接求所有元素的公共前缀,方法是从前往后遍历所有字符串的每一列,比较相同列上的字符是否相同,如果相同则继 ...
Leetcode8. 字符串转换整数 (atoi)
Leetcode8. 字符串转换整数 (atoi)
题目描述
请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。
函数 myAtoi(string s) 的算法如下:
读入字符串并丢弃无用的前导空格
检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。
读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。
将前面步骤读入的这些数字转换为整数(即,“123” -> 123, “0032” -> 32)。如果没有读入数字,则整数为 0 。必要时更改符号(从步骤 2 开始)。
如果整数数超过 32 位有符号整数范围 [−231,231−1][-2^{31},2^{31}-1][−231,231−1] ,需要截断这个整数,使其保持在这个范围内。具体来说,小于 −231-2^{31}−231 的整数应该被固定为 −231-2^{31}−231 ,大于231−12^{31}- ...
【小白搭博客】Hexo博客配置 | Butterfly主题
绑定域名
xxx.github.io 这种统一标识的域名冗长难记,可以绑定自己的个性化域名。
购买域名,并且将域名的 @、www 子域名以 CNAME 的方式解析到 agedcat.github.io;
在 Github 仓库中,选择 Settings – Pages,在 Custom domain 这里, 输入个性化域名,保存并勾选 enforce https 选项;
在本地博客文件夹中,./source 目录下,创建一个记事本文件,输入你购买的域名,文件命名为 CNAME,保存类型为所有文件(*.*);
输入下述命令,将改动的配置同步到 Github:
123hexo clean hexo ghexo d
完成后在浏览器中输入个性化域名,验证效果。
自定义主题
默认的 Hexo 博客主题为 landscape,功能简陋,可以根据自己的爱好更换其他主题。
我选择的主题为 Butterfly, 具体过程参见 安装和配置文档。
大部分设置可以参见官方文档,部分配置需要自行修改。
永久链接设置
安装插件
1npm install hexo-abbrlink --sa ...
【小白搭博客】Hexo博客搭建
准备工作
安装 Node.js
点击Node官方下载链接下载LTS版 Node.js,并安装。如果npm安装速度过慢,可以参考国内镜像源配置
安装 Git
点击Git官方下载链接选择对应版本 git,下载并安装。
Github 设置
注册 Github 账号;
新建仓库,设置项目信息;
开启 Github Pages。
本地安装 Hexo 框架
选择一个合适的目录,新建一个文件夹,用于存放博客文件;
在该文件夹下打开 Windows Terminal;
输入下述命令安装 Hexo 框架:
1npm i hexo-cli -g
安装完成后输入hexo v,若出现版本号则说明安装成功。
输入 hexo init 初始化该文件夹;
输入下述命令新建文章:
1hexo new "hello world"
输入hexo g生成静态网页,再输入hexo s打开本地服务器,然后在浏览器中打开localhost:4000可以预览博客效果。
链接 Github 仓库
经过上述步骤,博客在本地已经搭建成功。如果需要将博客发布到 Github 上,则需要将本地的 ...