Coding Lane

Rest at the end, not in the middle.

LC80题————合并排序数组

题目类型:Midium

解题思路 遇到这种题要首先想到暴力法,AC后再考虑别的方法。 解法1:暴力法 直接将nums2拼到nums1后面,然后sort,过啦!(太水了) 代码如下: vector<int> merge(vector<int> &nums1, int m, vector<int> &nums2, int n) { ...

LC--双指针与滑动窗口类型题目小结

题目类型:Midium

双指针的基本思想 顾名思义,双指针有两个不同的指针:快指针和慢指针。将其命名为“指针”其实并不太贴切,其实它充其量只能称为“下标”。 快指针的作用——获取新数组中的元素 慢指针的作用——将快指针指向的元素更新到数组中。 典型例题 LC27.移除元素 解题思路 代码如下

LC--数组中的相同元素

题目类型:Midium

解题思路 使用迭代器来解决问题。 先将两个数组排序,之后使用迭代器遍历两个数组; 如果出现两个数组中的元素相等,就将其push_back到target容器中; 如果it1小,那么it1++;如果it2小,就it2++. 之后要养成编写测试用例的习惯,需要考虑多种极端情况。 代码如下: #include <iostream> ...

LC136题————只出现一次的数字

题目类型:简单

解题思路: 使用异或思想来解决问题. 我认为这道题比较重要的点在于:遍历数组后,每个值都取异或,最后剩的唯一一个不是0的数即为所求。 代码如下: class Solution { public: int singleNumber(vector<int>& nums) { int reduce = 0; for(auto p...

LC66题————数组加一

题目类型:简单

解题思路: 分三种情况即可解决问题: 数组中不含9 || 数组中含好几个9 || 数组中全为9 数组中不含9 ———— 直接将末尾元素+1即可; 数组中含好几个9 ———— 从后往前找,先找到最后一个不为0的数,将这个数+1,然后将后面的9全部置0; 数组中全为9 ———— 开辟一个新的数组空间,大小为size()+1,然后令第一个元素为0即可。 ...

LC217题————存在重复元素

题目类型:简单

解题思路1: 使用unordered_set来解决问题. 我认为这道题比较重要的点在于:x的值在不断更新,如果哈希表中找到了任意一个x,那么返回true;否则返回false. 代码如下: class Solution { public: bool containsDuplicate(vector<int>& nums) { unorder...

LC824题记录——山羊拉丁文

题目与解释 给你一个由若干单词组成的句子 sentence ,单词间由空格分隔。每个单词仅由大写和小写英文字母组成。 请你将句子转换为 “山羊拉丁文(Goat Latin)”(一种类似于 猪拉丁文 - Pig Latin 的虚构语言)。山羊拉丁文的规则如下: 如果单词以元音开头(’a’, ‘e’, ‘i’, ‘o’, ‘u’),在单词后添加”ma”。 例如,单词 “apple” 变为 “...

第一天

摸一摸鱼吧

Hey 这是我的第一篇博客。 表情包测试 音乐嵌入界面测试 视频嵌入界面测试

Git指令整理

不适合阅读的整理的一些个人常用的 Git 指令

随便整理的一些自用的Git指令 GitHub创建仓库提示代码 echo "# 项目名" >> README.md git init git add README.md git commit -m "first commit" git remote add origin git@github.com:qiubaiying/项目名.git git push -u orig...

为博客添加 Gitalk 评论插件_copied from BY blog

保留原有博客,仅供参考

前言 由于 Disqus 对于国内网路的支持十分糟糕,很多人反映 Disqus 评论插件一直加载不出来。而我一直是处于翻墙状态的~(话说你们做程序员的都不翻墙用Google的吗😅,哈哈,吐嘈下) 针对这个问题,我添加了Gitalk 评论插件。在此,非常感谢 @FeDemo 的推荐 。 正文 Gitalk 评论插件 首先来看看 Gitalk 的界面和功能: gitalk 使用 ...

Git 代码回滚

copied from BY blog

并不适合阅读的个人文档。 git revert 和 git reset 的区别 先看图: sourceTree 中 revert 译为提交回滚,作用为忽略你指定的版本,然后提交一个新的版本。新的版本中已近删除了你所指定的版本。 reset 为 重置到这次提交,将内容重置到指定的版本。git reset 命令后面是需要加2种参数的:–-hard 和 –-soft。这条命令默认...

面试问题微记录

令人尴尬、痛苦和美好的回忆

A公司 数学建模都做了什么工作? 有没有用编程语言写过一些小工具? 类似LC第26题:移除元素 原题戳这里 先让写一个数组,删除3,打印出来; 如果删除两个3呢?时间复杂度是多少? 不用int,用vector,如何打印? vector里删除两个3呢? vector<unique_ptr> arr怎么操作? C/C++中如何使用和释放内存 什么情...