- 博客(18)
- 收藏
- 关注
原创 windows下redis安装及thinkphp中predis配置
最近项目上说是要用到redis来做缓存数据库,来应对某些高并发请求(如头条新闻)中,对关系型数据库操作过于频繁,容易达到数据库io瓶颈的状况。redis简介: redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash
2015-12-30 14:38:24 4281
原创 mysql在windows下主从同步配置
mysql主从同步:1.为什么要主从同步? 在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一。尤其是在大规模系统中,数据库集群已经成为必备的配置之一。集群的好处主要有:查询负载、数据库复制备份等。其中Master负责写操作的负载,也就是说一切写的操作都在Master上进行,而读的操作则分摊到Slave上进行。这样一来的可以大大提高读取的效率。写操作涉及到锁的问题,
2015-12-30 10:37:29 8763
原创 windows下安装jekyll教程
最近打算用github.io搭一个自己的博客,官方推荐使用jekyll来搭建博客,我看了网上的不少教程,现在总结一下一个可行的教程。1.安装ruby ①ruby的话可以从http://rubyinstaller.org/downloads/下载, ②安装完成后,需要将ruby安装路径添加到Path中。 注意点:ruby的安装路径不要带空格,即program
2015-12-29 20:12:37 830
原创 leetcode 110 Balanced Binary Tree
题目要求:判断一个二叉树是否为平衡二叉树(该二叉树的所有节点的左右子树高度差不能超过1)tags:tree,depth-first search recursive我的思路:1.遍历所有的节点,获取其左右子树的高度2.计算左右子树的高度差,如果有大于1的,则为非平衡二叉树,如果全部满足,则为平衡二叉树。public boolean isBalanced(TreeNode roo
2015-10-28 19:43:23 546 1
原创 leetcode 202 Happy Number
题目要求:求一个正整数的所有数字的平方和,若能得到1,则为happy number ,反之不为happy number。tags:hashtable,math,two pointers我的思路:1.首先计算该数字的平方和,将所有的平方和存入HashSet中,2.如果平方和为1,则返回true,3.如果HashSet中有相同的元素,则返回false, public i
2015-10-28 17:55:29 399 1
原创 leetcode 202 Happy Number
题目要求:求一个正整数的所有数字的平方和,若能得到1,则为happy number ,反之不为happy number。tags:hashtable,math,two pointer我的思路:1.首先计算该数字的平方和,将所有的平方和存入HashSet中,2.如果平方和为1,则返回true,3.如果HashSet中有相同的元素,则返回false, public int
2015-10-28 16:50:16 364
原创 leetcode 235 Lowest Common Ancestor oa a Binary Search Tree
题目要求:给定一个二叉查找树中的两个节点,找出它们最低的共同祖先。tags:tree,recursive思路:首先说说二叉查找树的特性:1.比根节点小的节点都在左子树上,2.比根节点大的节点都在右子树上,3.查找树种没有两个相同的值。非二叉查找树:查找时需要记录查找路径,不然无法进行查找。(遍历)做法:找到第一个值,使其可以大于等于左节点并小于等于右节点。即
2015-10-26 19:41:42 368
原创 leetcode 67 Add Binary
题目要求:给出两个二进制的字符串数组,求相加之后的值。tags:math,string思路:1.从后向前计算,逐个计算相加之后的值,2.由于两个字符串可能不一样长,可以设计两个指针,一个指向字符串1,另一个指向字符串2,先判断是否数组越界,再根据情况赋值(可用三元运算符)。 //从后往前,逐个计算相加之后的值 public String addBinary(String a,
2015-10-26 14:23:50 405
原创 leetcode 234 Palindrome Linked list
题目要求:判断一个linked list中的数值是否回文(要求O(n)时间,O(1)空间)。tags:linked list,two pointers,recursive我的思路:使用two pointers1.将两个指针分别指向中间,并改变前半段linked list的next指向(O(0.5)时间)2.将两个指针分别向两边走,比较内容是否相同。/** * O(n) ti
2015-10-26 11:12:50 385
原创 leetcode 223 Retangle Area
题目要求:求两个长方形的总面积(长方形长和x周平行,宽和y轴平行)tags:math思路:求重合边的长度,然后求得重合面积。总面积为两个长方形的面积和减去重合面积。我的代码:情况1:如果长方形有一对边是分离的,则两个长方形不相交情况2:如果长方形有一对边是包含的,则短边乘以另一对边相交长度,则为重合面积情况3:两对边都是包含一部分,则重合面积为两边相交长度乘机由上分析可
2015-10-26 10:49:06 422
原创 leetcode 205Isomorphic Strings
题目要求:判断两个字符串是否同构,例如:Given “egg” "add", return true;Given "foo" "bar",return false;tags:hash table思路:1.判断同构首先要判断的是:在hash table中String1中的字母是不是对应String2中的字母2.还需要判断String2中的字母也只能对应一个String1中的字母。
2015-10-26 09:22:15 334
原创 leetcode 204 Count Prime
题目要求:给一个非负整数,求比改整数小的质数有多少个。tags:math我的思路:1.先构造一个help函数,用来判断一个数是否为质数,2.对比给定整数n小的整数进行遍历,获得其中质数的个数。 //首先需要一个判断是否为素数的help函数 //这样做会出现时间超时 public int countPrimes(int n) { int count=0;
2015-10-25 13:26:06 517
原创 leetcode 203 Remove Linked list Elements
题目要求:给定一个值val,去掉linked list中所有包含该值的节点。tags:linked list,recursive非递归思路:1.首先设置一个伪头prehead,能像处理非头节点一样处理头结点,2.每次都对下个节点的值进行判断,如果与给定值相同,则将当前节点的next指向下下个节点。public ListNode removeElements(ListNode h
2015-10-25 13:00:35 397
原创 leetcode 19 Remove Nth Node from end of list
题目要求:去掉linked list的倒数第n个节点list:1->2->3->4->5 ,n=2,在去掉倒数第二个节点之后,变为1->2->3->5 。(n永远合法,且list最多过一趟)。tags:linked list,two pointers ,fast&slow pointers思路:1.linked list一般设计一个伪头(preHead),让preHead指向真正的
2015-10-24 17:26:05 320
原创 leetcode 189 Rotate Array
题目要求:将一个int数组向右移k步,(数组尾部元素添加到数组头部)tags:Array//我的方法:开辟一个新的int[]存储空间 public void rotate(int[] nums, int k) { k=k%nums.length; int[] temp = new int[k]; for(int i=0;i<k;i++){
2015-10-24 16:10:21 377
原创 leetcode 14 Longest Common prefix
题目要求:获得一个字符串数组中最长的相同字符串前缀tags:String思路:1.首先假设字符串数组中最长的字符串前缀为数组的第一个字符串,2.再将改字符串前缀与字符串数组中第二个字符串比较,直到找出最长的字符串前缀,3.循环2直到比完字符串数组中的所有值。优化:可以将字符串数组先进行排序,将字符串长度最短的排在前面,这样第一次假设的字符串前缀的平均长度要比排序前的短,
2015-10-24 15:44:00 367
原创 leetcode 125 Vaild Palindrome
验证是否为回文题目要求:给出一个字符串,验证其是否为回文(忽略非字母字符并忽略大小写)tags:String, Two Pointer一般验证是否为回文使用two pointer,比较头尾指针是否相同,做该题时还需要忽略非字母字符,并将字符都转换为小写(或大写)再进行比较。public boolean isPalindrome(String s) { int hea
2015-10-24 14:14:04 279
原创 leetcode 104 Maximum Depth of Binary Tree
二叉树的深度题目要求:给出一个二叉树,求得其最大深度。tags:tree,depth-first search,breadth-first search,recursive首先想到递归做法,如果一个节点为空,则该节点最大深度为0,如果不为空,那么该节点的最大深度为其左子树与右子数最大值加一。public int maxDepth(TreeNode root) { if(root=
2015-10-24 13:44:49 391
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人