自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MuseCP@YenTown

爱看看,不看滚

  • 博客(8)
  • 收藏
  • 关注

原创 695. Max Area of Island的C++解法

我的思路是利用队列存储一块完整的陆地,只要队列不为空就说明在此基础上还可以向四个方向扩展。但是要注意一旦进入队列的点要在原地图上修改成水域,避免重复计算。class Solution {public: int maxAreaOfIsland(vector<vector<int>>& grid) { int result = 0; int m = g...

2018-07-20 16:44:13 190

原创 784. Letter Case Permutation的C++解法

没想到好方法,是这个是看了解析才明白的。有点类似队列的思想,每遇上一个字母,就从头把结果容器中已有的字符串全部过一遍,针对当前字母修改大小写,然后存入这个结果容器中。class Solution {public: vector<string> letterCasePermutation(string S) { vector<string> result; ...

2018-07-20 15:37:01 210

原创 824. Goat Latin的C++算法

算法打败了100%的用户。1.用unordered_set判断单词开头是不是元音。2.一边找完整的单词,一边对单词里的字母进行换位置操作。时间复杂度只需要线性。3.把末尾要添加的字母直接做成一个字符串,每次循环改一下即可。4.要注意i的下标,S增加了词末字符串之后i的下标所指的位置会改变。class Solution {public: string toGoatLatin(string S) ...

2018-07-10 16:43:21 223

原创 762. Prime Number of Set Bits in Binary Representation的C++解法

题意是统计一个区间内有多少整数的二进制表示方法里的1的个数是质数。可以看一下数据规模在[1,10^6]之间,二进制位数不超过20位,可以直接枚举[1,20]的质数。class Solution {public: int countPrimeSetBits(int L, int R) { set<int> prim = { 2, 3, 5, 7, 11, 13, 17, 19 }...

2018-07-10 15:07:49 141

原创 693. Binary Number with Alternating Bits的C++解法

速度超过了100%的测试者啊哈哈,就是如果余数和上一个不一样就用2一直除下去,一样就返回false。class Solution {public: bool hasAlternatingBits(int n) { int flag = n % 2; n = n / 2; while (n > 0) { int tmp = n % 2; if (tmp == f...

2018-07-09 15:24:45 178

原创 637. Average of Levels in Binary Tree的C++解法

考层序遍历。class Solution {public: vector<double> averageOfLevels(TreeNode* root) { vector<double> result; queue<TreeNode*> ele; ele.push(root); while (!ele.empty()) { int...

2018-07-03 16:52:06 137

原创 766. Toeplitz Matrix的C++解法

我的想法就是按每一斜行进行检查。速度快于55%的人。class Solution {public: bool isToeplitzMatrix(vector<vector<int>>& matrix) { int m = matrix.size(); int n = matrix[0].size(); int flag = 1; for (int...

2018-07-03 15:48:41 295

原创 669. Trim a Binary Search Tree的C++解法

第一次看到这个题完全没弄懂,直接查了一下解法:1.当root的值在L和R之间时,递归修剪其左右子树,返回root值。2.当root的值小于L,(说明root和左子树的值都不符合条件),直接修剪右子树。3.当root的值大于R,(说明root和右子树的值都不符合条件),直接修剪左子树。class Solution {public: TreeNode* trimBST(TreeNode* root...

2018-07-02 16:54:33 207

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除