自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 关于redis实现主从复制和sentinel

碰到的问题1.sentinel无法检测出其他的sentinel2.如果一个主节点宕机, sentinel不做任何处理,不会从slave中进行选举解决方法:增加密码redis-server 设置了密码,如在 redis.conf 中设置了 :requirepass 123456在非主节点中需要加入 masterauth 123456则在 sentinel 中也要设置访问密码,如在 sentinel.conf 中设置:sentinel auth-pass mymaster 123456

2020-11-02 20:49:15 56

原创 virtual box虚拟机实现桥接网络(互联+ 访问外网)

virtual box虚拟机实现桥接网络(互联+ 访问外网)https://blog.csdn.net/lcdcxy/article/details/49362171整体思路参考该链接1.在计算机管理中添加环回适配器 http://jingyan.baidu.com/article/948f592需要注意的是,是在能连接外网的网络中添加共享2. 用ifconfig查看能否获得ip地址3. vim /etc/sysconfig/network-scripts/ifcfg-eth0(根据ifcon

2020-10-24 17:17:04 365

原创 C++判断是否为数字、字母、字母和数字的函数(leetcode125)

isalnum(字母加数字)isalphaisdigit

2019-03-04 12:54:45 4985

原创 从跟节点到叶子节点的和是否等于给定值(leetcode112)

有的时候用引用能够明显的加快速度减少内存leetcode106leetcode 112 :考虑树是空的,但num也是零的情况.坑很多Note: A leaf is a node with no children.[1,2]的结果是false目前stack方法只会inorderpostorder的stackhttps://leetcode.com/problems/path-sum/di...

2019-03-03 19:30:45 155

原创 判断二叉搜索树是否为真(leetcode98)

注意当前点的范围不仅和父节点有关还和它的祖先有关思路1.普通dfs / stack2. 只需判断中序遍历的序列是否是一个严格递增的序列代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right;...

2019-03-03 19:00:35 213

原创 二叉树的中序遍历(leetcode94)

preorder: root-left-rightinorder: left-root-rightpostorder: left-right-root官方解法:https://leetcode.com/articles/binary-tree-inorder-traversal/#方法二和方法三仔细阅读后重新实现线索二叉树:https://www.cnblogs.com/guweiwei...

2019-03-03 18:55:11 130

原创 将树转化为降维链表的形式,顺序是postorder中左右(leetcode 114)

https://leetcode.com/problems/flatten-binary-tree-to-linked-list/discuss/37154/8-lines-of-python-solution-(reverse-preorder-traversal)postorder

2019-03-03 18:23:12 92

原创 为完全二叉树增加向右的指针(leetcode 116)

https://leetcode.com/problems/populating-next-right-pointers-in-each-node/discuss/37503/24ms-Easy-Iterative-and-Recursive-C%2B%2B-Solutionsleetcode 116

2019-03-03 17:49:01 129

原创 注意事项

注意判断链表是否为空

2019-03-03 16:53:28 64

原创 queue顺序输出二叉树,判断每一层个数的思路(leetcode102)

最简单思路利用两个queue,一个记录TreeNode,一个记录层数我的思路记录上一层的起始node(指针)另一个思路在每层最后增加一个NULLhttps://leetcode.com/problems/binary-tree-level-order-traversal/discuss/33443/C%2B%2B-solution-using-only-one-queue-use-a-m...

2019-03-02 17:17:44 170

原创 对只有三个值的序列排序(leetcode75)

思路遍历两个回合的思路用一个count数组记录不同数值出现的次数即可遍历一个回合的思路我的思路记录从左边开始第一个不是0的位置设为i,从右边开始第一个不为2的位置设为j。遍历整个数组,如果当前位置对应的值为零,则当前 位置与位置i交换。若值为一则当前位置与位置j交换。最后终止条件需要小心判断。代码如下class Solution {public: void sortColor...

2019-03-01 12:14:39 290

原创 c++ split(leetcode 71)

重点string tmp;stringstream ss(path);while(getline(ss,tmp,’/’)) {}大佬的代码string simplifyPath(string path) { string res, tmp; vector<string> stk; stringstream ss(path); while(ge...

2019-02-28 22:01:21 150

原创 dfs /bfs/ dp/ 贪心 (leetcode55)

详见https://leetcode.com/articles/jump-game/#思路dfs/bfsdfs和bfs都是非常简单的思路。在dfs中,可以通过最后一层的结果赋予上一层值,从而降低复杂度。dp这里我的思路是:i指针从后往前遍历。如果i指向的是一个好的点,那么将所有能一次到达i的点都赋值为好的点。答案的思路是:依旧是i指针从后往前遍历。如果在i之后有i能到达的好的点,则i...

2019-02-28 20:08:23 1178

原创 模拟(leetcode54)

思路我的思路模拟每次向某个方向前进一格,当走到本轮的墙壁的时候就转向。提交后出现问题。就是不一定每次转向都能继续前进,需要判断。答案的思路思路一每次走到区间范围外,或者之前走过的地方就顺时针转向。思路二每次向一个方向走的是有一个区间的。我的代码class Solution {public: int dx[4] = {0,1,0,-1}; int dy[4] =...

2019-02-28 18:39:24 130

原创 最大连续子序列(leetcode53)

思路注意这是个 dp问题。从最后一个数开始推。从后往前遍历每一个位置,dp[i]表示以该位置为起点的最大序列和。有递归方程dp[i] = nums[i] + dp[i + 1] > 0 ? dp[i + 1] : 0类似的思路dp[i] = A[i] + (dp[i - 1] > 0 ? dp[i - 1] : 0);dp[i]表示以该位置为终点的最大子序列代码clas...

2019-02-28 15:42:42 293

原创 不额外开空间的情况下旋转(leetcode48)

思路额外开空间matrix[i][j] = matrix[n - 1 - j][i];可以通过map:mapp[i * n + j] = matrix[n - 1 - j][i];不太清楚这样做的内存开销我奇葩的思路旋转中如果按照matrix[i][j] = matrix[n - 1 - j][i];有的元素不仅仅被替换一次。发现如:1 2 34 5 67 8 9这样外圈的...

2019-02-28 15:01:02 188

原创 花样全排列(leetcode46,leetcode47)

普通全排列普通方法dfs+bool数组判断是否访问过花样方法dfs + 交换头元素http://xiaohuiliucuriosity.blogspot.com/2014/12/permutations.htmlpermutation of A[1…n] equals toA[1] + permutation of (A[1…n] - A[1])A[2] + permutation...

2019-02-27 20:46:44 97

原创 典型二分(leetcode33)

注意区间始终左闭右开。左和右之间的差距小于等于1时返回。注意要考虑数组为空的情况代码class Solution { public: int ans = -1; void binary_search(vector<int>&nums,int left,int right,int target) { //printf("l...

2019-02-27 15:14:43 99

原创 strstr(leetcode28)

题目用needle匹配haystack。返回第一次出现的位置,没有则返回-1。解决方法strstr 方法和find函数方法几乎没有任何时间和空间上的差别。只需根据string还是char*选择使用。strstr函数(char *) const char* whole = haystack.data(); char * match = needle.data(); ...

2019-02-27 14:37:08 107

原创 双指针游戏(leetcode26)

题目不另外开空间,使得一个排好顺序的有重复元素的数组变成一个前k个是排好序的无重复元素的数组,k表示非重复元素的个数。思路想要不开设空间 。每发现一个重复元素把整个数组向前移动一位。通过一个快指针,一个慢指针。当快指针和慢指针所指的元素不同时,慢指针的值变成当前快指针的值。重点在于直接赋值。因为对有效个数之外的数组是没有要求的。#include <cstdio>cla...

2019-02-27 12:16:14 144

原创 链表逆转之循环与递归(leetcode25)

思路1.递归对每一组进行逆转。2.参考答案。迭代完成每组逆转。0表示链表的头部,不包含数值。0 1 2 3 4 50 2 1 3 4 50 3 2 1 4 50 4 3 2 1 50 5 4 3 2 1通过一次迭代判断长度O(n),与边逆转边判断的时间复杂度一致。3.关于递归与循环。递归思路简单,但编码容易出现问题,比如在本题中的两个last都要赋值。4.当出现TLE的时候可能...

2019-02-26 22:09:20 173

原创 优先队列 (leetcode23)

多个有序链表合并排序https://leetcode.com/articles/merge-k-sorted-list/#思路1.最初版代码中每次比较k组中最小的元素,选择最小的那个。最小的那组指针迭代后继续比较。2.通过优先队列的方法,每次比较的依旧是k个数,但优先队列采用的是最小堆,所以每次插入的时间复杂度为O(logk),一共要插入的个数为所有元素的个数。时间复杂度为O(nlogk)...

2019-02-26 19:24:53 485

原创 括号匹配(leetcode21)

括号匹配(leetcode21)简单的括号匹配问题。思路自己的思路每次寻找最右的左括号,然后与与之相邻最近的没有被使用过的括号进行匹配 。复杂度O(n^2)答案思路左括号入栈,右括号出站进行匹配。复杂度O(n)错误和优化:1.忽略“([)]”这种情况。2.忽略只有一个左括号的情况应判断该括号未被使用。3.优化:如果字符串个数为奇数,返回错误。子串为空串返回0。4.优化:用...

2019-02-26 16:34:26 422

空空如也

空空如也

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

TA关注的人

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