自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

paine1690的博客

已移步 http://paine1690.github.io/

  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 [java源码分析]LinkedList源码分析

分析完Arraylist后来看一下List的另一种实现LinkedList。LinkedList底层使用的是双向链表结构,内部类定义了节点结构,一个头结点和尾节点表示队列的开始和结尾。与ArrayList不同的是,LinkedList除了实现了List接口外,还实现了Deque接口,而Deque接口继承自Queue接口,也就是说,LinkedList还可以用来实现双端队列。        关于

2016-05-31 09:37:26 272

原创 [编程之美]发帖“水王”问题

编程之美2.3节。正好对应leetcode上的第169题Majority Element和229题Majority Element II,该类问题可以总结为线性时间查找固定频率元素,应该使用Moore's voting algorithm,详细说明见链接。169. Majority Element Given an array of size n,

2016-05-30 21:05:26 241

原创 [Java源码分析]ArrayList源码分析

ArrayList是java集合中最常用的,基于一个数组实现的,容量可以动态增长。        ArrayList不是现成安全的,只能在单线程环境下使用。                本文以jdk1.8的源码为例,分析其实现机制。1、基本属性与构造函数        public class ArrayList extends AbstractList impl

2016-05-29 11:44:30 372

转载 330. Patching Array

Given a sorted positive integer array nums and an integer n, add/patch elements to the array such that any number in range [1, n] inclusive can be formed by the sum of some elements in the array. Re

2016-05-27 10:22:15 228

原创 [算法学习]字符串匹配

一段正在被编辑的文本构成一个文件,而所要搜寻的模式是用户正在输入的特定的关键词,有效解决这个问题的算法叫做字符串匹配算法。假设给定文本是长度为n的数组T,而模式是一个长度为m的数组P。算法导论第32章,字符串匹配问题。本章一共给出了四个算法,分别是朴素算法,Rabin-Karp算法,有限自动机算法和kmp算法。一、朴素算法朴素算法就是直接的暴力破解,两层循环,外层n-m+1,内层m

2016-05-25 14:36:30 251

原创 [算法学习]线性时间排序:计数排序、基数排序和桶排序

在算法导论中第八章专门列出了线性时间的排序算法,常规的基于比较的排序算法的上限是O(nlogn),本章介绍了三个算法,计数排序,基数排序,桶排序。第一次接触是计数排序是leetcode上面有一道计算论文什么因子的题,基数排序和桶排序在上学期算法课上老师讲过,当时一知半解,一直以为他们两个是同一个算法。最近自习看完了这一张才发现这两个算法是完全不一样的,看了一些博客也有很多的把这两个算法混淆,我

2016-05-24 18:57:16 376

原创 zookeeper安装与配置

参加阿里的中间件比赛,需要使用jstorm系统,以前完全没有接触过相应的概念,现在处于前期学习阶段,搭建环境过程中遇到了很多麻烦,在此记录下搭建过程,本片主要介绍zookeeper集群的安装与配置过程。一、确定jdk环境zookeeper需要以来java环境,所以一定要确保jdk安装正确。

2016-05-23 18:43:17 454

原创 50. Pow(x, n)

最开是在剑指offer上面看到这道题,今天遇到试了一下发现不可以,上网找了一下才发现还有更巧妙的方法。Consider the binary representation of n. For example, if it is "10001011", then x^n = x^(1+2+8+128) = x^1 * x^2 * x^8 * x^128. Thus, we don't w

2016-05-13 15:04:21 289

转载 91. Decode Ways

参考地址  https://segmentfault.com/a/1190000003813921Decode WaysA message containing letters from A-Z is being encoded to numbers using the following mapping:'A' -> 1'B' -> 2...'Z' -> 26

2016-05-13 11:22:00 260

原创 300. Longest Increasing Subsequence

最长升序子序列,很经典的问题,发现写博客的真是不负责任啊,瞎写一通根本没有任何逻辑,本文主要参考http://yzmduncan.iteye.com/blog/1546503,加上自己的理解和实现的代码。最长递增子序列问题:在一列数中寻找一些数,这些数满足:任意两个数a[i]和a[j],若i设dp[i]表示以i为结尾的最长递增子序列的长度,则状态转移方程为:dp[i] =

2016-05-13 10:06:05 319

原创 198. House Robber

You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent house

2016-05-11 10:14:23 236

原创 121. Best Time to Buy and Sell Stock

public int maxProfit(int[] prices) { if(prices.length<2){ return 0; } int re=0; int low=prices[0]; for(int i=1; i<prices.length; i++){ if(prices[i]<low

2016-05-10 15:22:52 274

转载 31. Next Permutation

参考地址  http://www.mamicode.com/info-detail-650903.html首先,关于什么是全排列不做解释。如果一个排列为A,下一个排列为A_NEXT,那么A_NEXT一定与A有尽可能长的公共前缀。看具体例子,一个排列为124653,如何找到它的下一个排列,因为下一个排列一定与124653有尽可能长的前缀,所以,脑洞大开一下,从后面往前看这

2016-05-09 09:03:09 268

转载 [算法学习]最长回文子串:Manacher算法

参考地址:http://www.cnblogs.com/bitzhuwei/p/Longest-Palindromic-Substring-Part-II.html#_label1首先我们把字符串S改造一下变成T,改造方法是:在S的每个字符之间和S首尾都插入一个"#"。这样做的理由你很快就会知道。例如,S="abaaba",那么T="#a#b#a#a#b#a#"。

2016-05-06 16:53:00 390

原创 3. Longest Substring Without Repeating Characters

Given a string, find the length of the longest substring without repeating characters.Examples:Given "abcabcbb", the answer is "abc", which the length is 3.Given "bbbbb", the answer is "

2016-05-05 16:15:34 304

Java NIO中文版

全面介绍java nio的书,中文版没有正版,只有网上流传的这个版本,对于深入了解java有一定帮助

2016-05-06

空空如也

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

TA关注的人

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