自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 凯文凯利的预测

近日,“互联网教父”凯文•凯利在演讲中称,任何一家大公司都有颠覆的风险。,未来创业者可在根据共享经济、互动经济、数据经济、人工智能等科技未来发展趋势去创业。当前,互联网行业频频上演巨头并购的剧情,同时又有“O2O死亡名单”疯传于网络。历史证明,任何巨头或行业都是有可能被颠覆的。因此,尽管被“O2O死亡名单”搞得人心惶惶的背景下,创业者还是有新的创业方向的。“互联网教父”凯文•凯利就给创业者们指明了

2015-10-31 12:29:18 714

转载 详解cookie与session机制

原文链接为保护原作者的知识产权,推荐使用原文进行观看。一下内容仅作备份。谢谢会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什

2015-10-29 22:49:17 316

转载 人,技术与流程-- 孙宇聪

原帖链接一下内容仅作备份。建议使用原帖观看 我先做一下自我介绍,我是 2007 年加入的 Google,在 Moutain View 总部任 Google SRE,今年年初回国加入 Coding。  在 Google 我参与了两个 Project,第一个就是 Youtube,其中包括 Video transcoding, streaming 等,Google 的量很大,每个月会有 1PB 级别的存

2015-10-29 11:51:19 407

原创 leetcode Unique Paths II

题目链接这里有个效率很低的算法。深度优先算法public class Solution { public static void main(String args[]) { Solution sol=new Solution(); System.out.println(sol.uniquePathsWithObstacles(new int[][]{{0

2015-10-24 11:09:02 222

原创 leetcode Subsets II

题目链接 思路: 和subsets 第一题的思路一样。只不过,要让每次循环的起点值不相同。。 就是代码int k=i++;while(i<n&&nums[i]==nums[k]){ i++;}实现的功能 解题代码public class Solution { int nums[]; int n; List<List<Integer>> re

2015-10-23 19:53:54 246

原创 leetcode Convert Sorted List to Binary Search Tree

题目链接一个偷懒的做法就是把链表转换为数组。然后用分治法。左边递归构建子数,右边递归构建子树。。线性时间复杂度。。看上去不错。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val =

2015-10-23 19:42:59 227

原创 leetcode Combination Sum II

题目链接思路: 没有public class Solution { int [] candidates; int n; LinkedList<List<Integer>> result; LinkedList<Integer>temp; public List<List<Integer>> combinationSum2(int[] candidates,

2015-10-23 19:08:40 219

原创 leetcode Combination Sum

题目链接思路: 递归回溯public class Solution { int [] candidates; int n; LinkedList<List<Integer>> result; LinkedList<Integer>temp; public List<List<Integer>> combinationSum(int[] candidates,

2015-10-23 16:30:36 199

原创 leetcode Sum Root to Leaf Numbers

题目链接思路: 无/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Sol

2015-10-22 20:04:12 192

原创 leetcode Remove Duplicates from Sorted Array II

题目链接思路: 没有public class Solution { public int removeDuplicates(int[] nums) { int length=1; boolean exist=false; int distance=0; for(int i=1;i<nums.length;i++)

2015-10-22 19:39:39 193

原创 leetcode Combinations

题目链接思路: 递归回溯public class Solution { int n; int k; //boolean record[]; LinkedList<List<Integer>>result; LinkedList<Integer>temp; public List<List<Integer>> combine(int n, int k)

2015-10-22 19:08:16 257

原创 leetcode Set Matrix Zeroes

题目链接思路: 没有思路public class Solution { int m; int n; boolean recordRow[]; boolean recordCol[]; public void setZeroes(int[][] matrix) { int m=matrix.length; int n=matrix[0

2015-10-22 17:04:53 178

原创 leetcode Search a 2D Matrix

题目链接思想: 谈不上思想。我这个方法是线性查找的。如果希望改进可以用二分查找public class Solution { public boolean searchMatrix(int[][] matrix, int target) { int startRowIndex; final int LASTROWINDEX=matrix[0].lengt

2015-10-22 14:28:17 203

原创 leetcode Subsets

题目链接思路: 递归回溯public class Solution { int nums[]; int n; List<List<Integer>> result; public List<List<Integer>> subsets(int[] nums) { Arrays.sort(nums); this.nums=nums;

2015-10-22 13:47:13 221

原创 leetcoed Rotate Image

题目链接思路: 找规律,旋转的规律就是i,j的下一个点是j,n-i。其中n行数减一。 这样进行4次转一圈旋转了一个像素。。 再观察出需要用哪些像素做起始点然后开始旋转。。 public class Solution { int [][]matrix; int n; public void rotate(int[][] matrix) { this.mat

2015-10-20 19:30:52 239

原创 leetcode Generate Parentheses

题目链接思路: 这个题目其实看了别人的代码。当然只是匆匆扫了一眼,并没有看仔细。其实包含的思想是有剪枝的穷尽 我们可以定义两个变量一个记录还有多少个(另一个变量记录还有多少个)那么,下面的递归就是穷尽所有的可能help(prev+"(", open-1, close);help(prev+")",open,close-1);当open==close==0时。代表所有的()都用完了,需要添加到结

2015-10-20 17:05:38 234

原创 leetcode Gray Code(不是自己做的)

题目链接思路: 这个题是观察规律。当然我是没做出来的。。public class Solution { public List<Integer> grayCode(int n) { List<Integer> result = new ArrayList<>(); if (n == 0) { result.add(0);

2015-10-19 20:02:52 164

原创 leetcode Unique Paths

题目链接思路: 这个题目就是求c(m+n-2,n-1)。。也是组合数学里面非降路径的概念import java.math.BigInteger;public class Solution { public int uniquePaths(int m, int n) { BigInteger result=new BigInteger("0"); BigI

2015-10-19 18:58:34 183

原创 leetcode Find Minimum in Rotated Sorted Array(需要复习)

题目链接思路: 二分查找 但是这个题目很奇怪。因为右边收缩的时候并不能做middle-1的收缩。所以还是需要仔细看看的。。public int findMin(int[] nums) { int left=0; int right=nums.length-1; while(left<right) { int

2015-10-19 18:28:34 170

原创 leetcode Convert Sorted Array to Binary Search Tree

题目链接思路: 分治法/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class S

2015-10-19 16:25:15 171

原创 leetcode Maximum Subarray

题目链接java的忧伤,是线性时间的也通不过。总说超时。所以我只能抄一个c++提交上去了。其实有个人用java写的答案也是超时的,所以只能说语言不对了思路: 一个record数组。记录到所以i为止,前面的连续的最大和。。如果是小于零的直接记为0,表示不向前连续,因为前面的和是负的,加上必定是减小的。public class Solution { public int maxSubArray

2015-10-19 15:44:02 156

原创 leetcode Search Insert Position

题目链接思路: 二分查找public class Solution { int []nums; int target; public int searchInsert(int[] nums, int target) { this.nums=nums; this.target=target; return help(0,nums.

2015-10-19 14:56:57 172

原创 leetcode Flatten Binary Tree to Linked List

题目链接思路: 用一个递归思路,很简单/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public

2015-10-19 14:26:02 185

原创 leetcode Binary Tree Zigzag Level Order Traversal

题目链接思路: 简单思路/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class

2015-10-19 11:09:48 156

原创 leetcode Sort Colors

题目链接思路: 用两个指针,一个标记0的结尾,一个标记2的开头。。用一个指针扫描数组。如果是0,放到0的集合中,如果是2放到2的集合中。如果是1则不处理。。public class Solution { public void sortColors(int[] nums) { int zeroIndex=-1; int twoIndex=nums.length

2015-10-19 10:39:42 189

原创 leetcode Permutations

题目链接思路: 递归回溯。典型应用public class Solution { int n; List<List<Integer>> result; List<Integer> temp; boolean isUsed[]; int[]nums; public List<List<Integer>> permute(int[] nums) {

2015-10-14 19:48:36 208

原创 leetcode Minimum Path Sum

题目链接思路: 动态规划 一个点只能由左边点或者上边点到达。这样我们做个比较就好record[i][j]=Math.min(record[i][j-1],record[i-1][j])+grid[i][j];public class Solution { public int minPathSum(int[][] grid) { int n=grid.length;

2015-10-14 15:16:34 199

原创 leetcode Swap Nodes in Pairs

题目链接 思路: 简单题。但是我是不是作弊了?其实改变val值和不改变的话差别不大。就是自己实现一个改变节点指针的程序而已。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val =

2015-10-14 14:32:07 152

原创 leetcode Find Peak Element

题目链接思路: 二分查找依旧不熟练public class Solution { public int findPeakElement(int[] nums) { int n=nums.length; if(n==1) { return 0; } int leftIndex=0;

2015-10-14 14:14:28 271

原创 leetcode Bitwise AND of Numbers Range

题目链接不得不说。我的位操作真的不是很好。碰到位操作的题目就不会。注定不能做硬件程序员。。思路:(是看了别人的代码才有的思路,不然我就用循环做了) 其实从m到n。。。我们可以想象,只有m和n的二进制公共前缀起作用。因为从m到n。公共前缀后面的每一位都会出现0.这样与出来的结果就是0.所以我们只要找到m,n的二进制公共前缀就好。public class Solution { public i

2015-10-14 13:24:37 199

原创 leetcode Triangle

题目链接思路:动态规划 定义一个数组记录到这个点的最小距离其中要注意的是 每一行的第一个点,和最有一个点只有一种方式能到达,要特殊处理public class Solution { public int minimumTotal(List<List<Integer>> triangle) { int n=triangle.size(); int resul

2015-10-14 09:55:55 220

原创 leetcode Validate Binary Search Tree

题目链接思路: 何时为一个合格的搜索树? 1左边是合格搜索树 2右边是合格搜索树 3根大于左边的最大值 4根小于右边的最小值运用递归判断/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right

2015-10-13 21:37:45 205

原创 leetcode Ugly Number II(需要复习)

题目链接这个题我没有坐上来。是看别人的思路写的public class Solution { public int nthUglyNumber(int n) { List<Integer> table = new ArrayList<Integer>(); table.add(1); int index2=0,index3=0,index5=0;

2015-10-13 20:10:33 229

原创 leetcode H-Index II

题目链接代码写的很烂。按下不表public class Solution { public int hIndex(int[] citations) { if(citations.length==0) { return 0; } boolean allzearo=true; for (int

2015-10-13 19:06:47 254

原创 leetcode Peeking Iterator

题目链接// Java Iterator interface reference:// https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.htmlclass PeekingIterator implements Iterator<Integer> { private Integer cache; private

2015-10-13 10:27:50 263

原创 leetcode Nim Game

题目链接思路: 1 2 3都是赢的4 输的5 6 7 都是赢的 (5 我拿走1个 6拿走2个 7 拿走三个 保证到对手那边是4) 8是输的 (我无论拿走1 2 3 个对手都可以保证他拿完是4个留给我,让我输)观察规律 只要我们保证把4 ,8等等能留给对手就能赢。不能保证就是输的 规律 1 2 3 4 5 6 7 8 9 10 赢赢赢输赢赢赢输赢赢赢public class

2015-10-13 10:12:59 278

原创 leetcode Unique Binary Search Trees

题目链接思路:动态规划一棵树是由左子树和右子树组合而成 所以 一个n点数的情况是 根占一个点左子树点0个点可能情况*右子树n-1个点可能情况 左子树点1个点可能情况*右子树n-2个点可能情况 。。。。。。。。。。。。。。。。。。。。。。 左子树点n-1个点可能情况*右子树0个点可能情况这样的所有组合的public class Solution { public int numTr

2015-10-12 21:18:43 276

原创 leetcode Populating Next Right Pointers in Each Node

题目链接思路:这个题目有问题。其实深度优先并不是常量空间复杂度的。遇到问题: 1注意链接 root->right->next= root->next->left; 2注意在虽有边的时候root没有next/** * Definition for binary tree with next pointer. * struct TreeLinkNode { * int val; *

2015-10-12 20:42:05 238

原创 leetcode Binary Tree Inorder Traversal

题目链接/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution

2015-10-11 21:56:18 230

原创 leetcode word-pattern

题目链接 思路: 用一个hashMap存放已经出现的模板 单词对。。在以后出现模板的时候从hashMap里面取出单词查看是不是一样的。public class Solution { public boolean wordPattern(String pattern, String str) { String [] strs=str.split(" ");

2015-10-11 21:26:02 287

空空如也

空空如也

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

TA关注的人

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