自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

K.Sun

用最简单的文字解释问题,用最少的步骤解决问题!

  • 博客(55)
  • 资源 (8)
  • 收藏
  • 关注

原创 Find the Difference

题目地址:https://leetcode.com/problems/find-the-difference/Given two strings s and t which consist of only lowercase letters.String t is generated by random shuffling string s and then add one more letter

2016-11-29 18:20:49 288

原创 Single Number

题目地址:https://leetcode.com/problems/single-number/Given an array of integers, every element appears twice except for one. Find that single one.Note: Your algorithm should have a linear runtime complexi

2016-11-29 14:59:52 251

原创 Nim Game

You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be the

2016-11-29 14:27:52 312

原创 Island Perimeter

题目地址:https://leetcode.com/problems/island-perimeter/You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represents water. Grid cells are connected horizontally/v

2016-11-28 21:34:41 1016

翻译 Java中的HashMap与TreeMap

原文地址:HashMap and TreeMap in JavaHashMap与TreeMap是Collection框架中的一部分。 HashMapjava.util.HashMap类是一种基于哈希的实现。在HashMap中,我们有一个key和一个value,pairHashMap<K, V> hmap = new HashMap<K, V>();我们考虑下面的例子,我们需要对已知整型数组中的

2016-11-27 23:02:54 1276

翻译 Java中HashMap与HashTable的区别

原文地址:Differences between HashMap and HashTable in JavaHashMap与HashTable在哈希表中存储键值对。当用HashTable或者HashMap的时候,我们指定一个对象用作key,还有一个指向这个key的value。然后对这个key进行hash操作,得到的哈希码用于在表中存放value的索引。Java代码样例// A sample Java

2016-11-27 22:00:22 399

翻译 Java中的HashSet

原文地址:HashSet in JavaHashSet:实现了Set接口HashSet依赖的数据结构是哈希表因为实现的是Set接口,所以不允许有重复的值插入到HashSet中的对象不保证与插入的顺序保持一致。对象的插入是根据它的hashcodeHashSet中允许有NULL值HashSet也实现了Searlizable和Cloneable两个接口HashSet的构造函数: Hash

2016-11-27 19:19:50 9228 1

翻译 Java中的隔离岛

原文地址:Island of Isolation in Java在Java中,对象的析构只有垃圾回收模块关心,那些没有引用的对象正受垃圾回收中意。垃圾回收器可以识别这类对象。隔离岛Object1引用Object2,Object2引用Object1。要么Object1被其他对象引用,要么Object2倍其他对象引用。这就是隔离岛(Island of Isolation)。一般而言,隔离岛是一组对象

2016-11-27 18:27:09 527

翻译 Java对象在内存中是如何存储的

原文地址:How are Java objects stored in memory?在Java中,所有的对象都被动态地分配在堆上。这与C++不同,C++的对象要么分配在栈中,要么分配在堆上。在C++中,我们用new()来分配对象,这个对象就会被分配到堆上,如果不是全局的或者静态的,那么就会分配到栈上。在Java中,只有我们在申明一个类型变量的时候,只创建一个引用(内存不会为对象分配)。为了给一个对

2016-11-26 21:53:37 3955

翻译 数据结构——线索二叉树

原文地址:Threaded Binary Tree遍历一个二叉树要么用递归,要么用附件的栈。线索二叉树的思想是让中序遍历更快,或者不用栈和递归。一个二叉树通过构建所有右孩子的指针建立索引,这个指针一般为NULL指向中序后继节点(如果存在的话)。线索二叉树有两种类型:单线索:使一个NULL右指针指向中序先驱(如果后继存在)双线索:左右NULL指针分别指向中序的先驱和中序的后继。在翻转中序遍历与后序遍历

2016-11-26 21:32:11 444

翻译 数据结构——不用栈、不用递归中序遍历树

原文地址:Inorder Tree Traversal without recursion and without stack!用Morris Traversal,我们可以不用递归和栈遍历树。Morris Traversal的思想是基于线索二叉树的。在这个遍历中,我们首先建立到中序先驱的连接,并用这些连接打印数据,最后恢复变化,还原出树的原貌。1. 初始化current为root 2. While

2016-11-26 20:44:35 1092

翻译 数据结构——非递归中序遍历树

原文地址:Inorder Tree Traversal without Recursion不用递归遍历树,那么很显然就是用栈了。下面是用栈遍历二叉树的算法。逐步执行这个算法请看这里。1) 建立一个空栈S。2) 初始化当前的节点作为根节点3) 将当前节点push到S中并设置current = current->left直到current为NULL4) 如果current为NULL并且stack不

2016-11-26 20:22:56 888

翻译 数据结构——树的水平遍历

原文地址:Level Order Tree Traversal树的水平遍历就是广度优先遍历树。 上树的水平遍历顺序是:1 2 3 4 5。方法1 (用函数打印已知层)算法:这个方法里面有两个基本的函数。一个是打印已知层的所有节点(printGivenLevel),另一个是打印树的水平顺序遍历(printLevelorder)。printLevelorder用printGivenLevel逐个从

2016-11-26 16:13:09 1118

翻译 数据结构——二叉树的直径

原文地址:Diameter of a Binary Tree树的直径(有时也称作宽度),指的是树中的两个叶子节点之间最长路径的节点的数目,下面的图显示了两个树的直径都是9,形成最长路径的两个端点的叶子节点被加上了阴影(注意每个树中长度为9的路径不止一个,但是没有比9再更长的路径了)。 一个树T的直径是下面几条里面最长的:T的左子树的直径T的右子树的直径两个叶子之间穿过T的根的最长路径(这

2016-11-26 15:33:58 5267

翻译 数据结构——树的遍历

原文地址:Tree Traversals不像线性数据结构(数组,列表,队列,堆栈等),它们在逻辑上只有一种遍历方式,树可以有不同的遍历方式。下面就是遍历树的一般所用的方法:深度优先遍历: 1)中序遍历(Left, Root, Right):4 2 5 1 3 2)先序遍历(Root, Left, Right):1 2 4 5 3 3)后序遍历(Left, Right, Root)

2016-11-26 15:08:15 5099

翻译 数据结构——握手引理与有趣的树特性

原文地址:Handshaking Lemma and Interesting Tree Properties什么是握手引理(Handshaking Lemma)?握手引理是关于无向图的。在每个有限的无向图中,奇数度的定点的个数总是偶数。握手引理是一个度数和公式的推论(有时候被称为握手引理)∑v∈Vdeg(v)=2|E|\sum_{v\in V} deg(v)=2|E|在树的数据结构中握手引理到底有啥

2016-11-26 13:19:41 4973

翻译 数据结构——二叉树的类型

原文地址:Binary Tree | Set 3 (Types of Binary Tree)前面我们已经介绍了二叉树以及二叉树的特性。在这一篇中我们讨论二叉树的常见类型。下面就是二叉树的常见类型。满二叉树:如果一个二叉树的所有节点要么有2个孩子,要么没有孩子,那么这个二叉树就是满的。下面就是一个满二叉树的例子: 18 / \

2016-11-25 16:01:13 906

翻译 数据结构——二叉树的特性

原文地址:Binary Tree | Set 2 (Properties) 我们已经在第一章中介绍了二叉树,在这一章,介绍一下二叉树的特性。1)一个二叉树中第ll层的节点最大数目为2l−12^{l-1}。这里的“层”指的是从根节点到指定节点的路径上的节点数。根在第1层。这个可以通过归纳法证明。 对于根,l=1l=1,节点数=21−1=1=2^{1-1}=1 假设在ll层的最大节点数为2l−12

2016-11-25 15:14:57 510

翻译 数据结构——树的概述

树:跟数组,链表,堆栈,队列不一样,这些都是线性的数据结构,而树呢是层级类的数据结构。树的词汇表:最上层的节点叫树根节点,一个元素下层的直接元素称为它的孩子节点。直接上层节点称为父节点。例如a是f的孩子,并且f是孩子的父亲。最后没有孩子节点的元素称为叶子节点。 tree ---- j <-- root / \ f k

2016-11-25 14:17:53 309

转载 构建Java并发模型框架

原文地址:http://www.ibm.com/developerworks/cn/java/l-multithreading/#toggleJava的多线程特性为构建高性能的应用提供了极大的方便,但是也带来了不少的麻烦。线程间同步、数据一致性等烦琐的问题需要细心的考虑,一不小心就会出现一些微妙的,难以调试的错误。另外,应用逻辑和线程逻辑纠缠在一起,会导致程序的逻辑结构混乱,难以复用和维护。本文试图

2016-11-22 21:11:01 664

转载 Java 类的热替换 —— 概念、设计与实现

原文地址:http://www.ibm.com/developerworks/cn/java/j-lo-hotswapcls/index.html构建基于 Java 的在线升级系统对于许多关键性业务或者庞大的 Java 系统来说,如果必须暂停系统服务才能进行系统升级,既会大大影响到系统的可用性,同时也增加了系统的管理和维护成本。因此,如果能够方便地在不停止系统业务的情况下进行系统升级,则可以很好地解

2016-11-21 22:58:53 215

翻译 计算在已知字符串中所有回文子序列的数目

原文地址:Count All Palindromic Subsequence in a given String在已知的字符串中查找有多少个回文的子序列(没必要对相同的做区分)。注意空字符串不能看作是回文。例子:输入 : str = "abcd"输出 : 4解释 :- 回文子序列有 : "a" ,"b", "c" ,"d" 输入 : str = "aab"输出 : 4解释 :- 回文子序列有

2016-11-17 17:50:12 2601 1

原创 com.sun.mirror的jar包

《Java編程思想》中的注解代码中引入过这么一个包(com.sun.mirror),书上说的是在Jdk中有个tools.jar中,引入这个包就每这个问题了,但是笔者用的是JDK 1.8,把这个包import进来,代码还是一批报错。实在没办法就在网上找,于是找到了apt-mirror-api-0.1.jar,它包含了以下内容: Files contained in apt-mirror-api-0

2016-11-15 13:01:49 8180 8

翻译 动态规划之子集和问题

原文地址:Dynamic Programming | Set 25 (Subset Sum Problem)已知一个非负整数集,与sum的值,确定这个集合是否存在这样的子集,这个子集所有元素和等于sum。例子: set[] = {3, 34, 4, 12, 5, 2}, sum = 9输出: True //There is a subset (4, 5) with sum 9.设isSubSe

2016-11-13 13:54:11 8156

原创 Server Tomcat v7.0 was unable to start within 45 seconds

在启动Tomcat的时候,启动到一半提示这样的错误,尤其是在服务器重启以后首次启动tomcat,往往会出现这样的情况:Server Tomcat v7.0 was unable to start within 45 seconds. If the server requires more time, try increasing the timeout in the server editor.这个

2016-11-12 10:36:20 821

原创 Intellj Idea 16添加Maven新建模块

在Intellj Idea 16中,新建Maven项目,发现新建窗口没有Maven模块。打开File->settings->Plugins,如下图:在查询框中输入“Maven”字样,即可搜索出Maven的相关插件,然后把这两个全部选中,点击“Apply”。然后重启Intellj Idea后,就会发现新建窗口就有Maven模块了。下面就该干啥干啥吧!

2016-11-11 09:45:30 1569

原创 JavaScript代码加Alert后代码有效,不加则无效。

这个问题还真是头疼,刚开始觉得好奇怪,同样一段代码,为毛随便alert一下,下面的代码就起作用,去掉alert,啥效果也没有,真是奇了怪了!先看下代码:function setDedaultOption() { var select = document.getElementById("nodeId"); //假设我们想要第二个选项为默认选项 select.options[1

2016-11-10 14:02:54 2473

翻译 构建一个n×n的unique矩阵

原文地址:Construct a unique matrix n x n for an input n已知一个奇数n,根据下面的条件得到一个n×n大小的矩阵:每个元素是1到n之间的一个整数(包含1和n);在同一行,同一列没有相同的数字;所有的1必须距矩阵的中心任意可能的距离,对于一个奇数n,n×n的矩阵中心是cell ((n-1)/2, (n-1)/2)。输出:Input : n = 1

2016-11-08 10:43:48 1436

原创 启动Tomcat提示:指定的服务未安装

错误提示刚下载下来的tomcat或者刚重装了系统,这时候如果想运行tomcatX.exe可能会抱这样的错误:这是因为没有安装汤姆猫所指定的服务。安装服务打开cmd,切换到tomcat/bin目录下,运行命令:service.bat install,如图所示:运行完毕后,会出现服务已安装的提示,然后再运行tomcatX.exe或者tomcatXw.exe(这里的X是大版本号),就不会报错啦!卸载服务当

2016-11-07 21:45:11 1803

原创 设置tomcat启动参数

Linux在修改启动参数前先看下tomcat默认启动参数是啥玩意,这样是为了下面方便进行对比:$ jps -v32136 Jps -Denv.class.path=.:/usr/java/jdk1.8.0_101/lib/dt.jar:/usr/java/jdk1.8.0_101/lib/tools.jar -Dapplication.home=/usr/java/jdk1.8.0_101 -Xm

2016-11-07 18:54:17 34501 1

原创 Windows下Jconsole无法连接到进程

Jconsole是JDK提供给我们一种十分常用的工具,它将一些关于JVM的文本数据图形化,使得用户对JVM的监控更直观。但是有时会出现Jconsole无法连接到进程的情况,这是因为JVM在启动的时候默认加载参数没有进行设置,所以只要我们队JVM的启动参数进行恰当的配置就行了。启动参数在哪里设置,请参考设置tomcat启动参数 添加启动参数-Dcom.sun.management.jmxremote

2016-11-07 18:23:44 8028

原创 Java虚拟机工具之堆栈跟踪工具jstack检测对象wait方法

wait()方法源于Object类,当线程调用wait的时候,意思就是说线程会放弃对象锁,进入等待此对象的等待锁定池。下面看看用jstack怎么定位wait方法。首先写一段简单的调用wait的代码:import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;class WaitTask impl

2016-11-07 16:44:31 2746

原创 Java虚拟机工具之堆栈跟踪工具jstack检测输入等待

当代码运行到有输入的时候,毫无疑问执行会停下来,然后监听键盘时间,然后将键盘输入的字符放到变量中,jstack可以检测这样的有输入的代码比较简单:import java.util.Scanner;public class InputWait { public static void main(String[] args) { Scanner s = new Scanner(S

2016-11-07 15:59:06 831

原创 Java虚拟机工具之堆栈跟踪工具jstack检测死锁

jstack是一个很实用的工具,不仅能定位到死循环的位置,还能找到死锁的位置,这个工具对我们直接在生产机上定位错误带来了极大的方便,尤其是那些不容易复现的错误。首先呢,先写一个能产生死锁的代码。代码逻辑很简单,咱就产生两个线程,两个线程分别执行加锁与放锁两个动作,啥时候产生死锁呢,就是在两个线程都释放锁以后,又同时加锁,于是互相僵持,互相等待,产生死锁。import java.util.concur

2016-11-07 15:21:09 3816

翻译 字符数目相同的子字符串的数目

原文地址:Count Substrings with equal number of 0s, 1s and 2s已知一个字符串,这个字符串只包含0,1,2,求子字符串的数目,这些子字符串包含有相同数目的0,1,2。例子:输入: str = “0102010”输出: 2解释: 子字符串str[2, 4] = “102” 与子字符串str[4, 6] = “201”有相同数目的0, 1和2输入:

2016-11-07 00:06:26 1806

翻译 第N个偶斐波那契数

原文地址:Nth Even Fibonacci Number 已知一个n,找到第n个偶斐波那契数。Input : n = 3Output : 34Input : n = 4Output : 144Input : n = 7Output : 10946下面的数字序列就是斐波那契数列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ….对于序列

2016-11-06 14:36:03 565

原创 在VS(Visual Studio)中运行带有参数的控制台程序

在项目(Project)菜单中打开当前程序属性(Properties)→配置属性(Configuration Properties)→调试(Debugging)→命令参数(Command Arguments),然后将需要的参数写在命令参数后面,有多少写多少,参数间用空格间开即可。如图所示:

2016-11-06 13:57:11 14663

原创 OpenCV在Microsoft Visual Studio 2010环境中的配置

一、下载OpenCV笔者下载的版本为OpenCV 2.4.1;将文件解压到指定的文件夹,例如:D:\Program Files (x86)\opencv。二、配置环境变量:环境变量在:计算机(Windows 7/Vista)→属性(右键)→高级系统设置(显示器左栏)→环境变量。在环境变量Path(用户与系统随便选一个)中配置:D:\Program Files (x86)\opencv\build\x

2016-11-06 13:52:56 556

原创 Java虚拟机工具之堆栈跟踪工具jstack定位死循环

jstack命令用于打印Java进程,core文件或者远程调试服务器的堆栈跟踪记录,它会打印类名,方法名,字节码索引(BCI),如果允许的话,还会打印出行号。jstack主要用于生成线程快照,这样可以定位长时间停顿的原因,比如死锁或者死循环。jstack的命令格式jstack [ options ] pid我在代码里特意写了个死循环,代码如下:/** * Created by kevin on 1

2016-11-04 16:40:04 4360

翻译 丑数

原文地址:Ugly Numbers一个数的因数只有2,3或者5这样的质数,那么这个数就被称为丑数(Ugly Numbers)。序列1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, …就是前11个丑数。为了方便,把1也包括进来了。写一个程序找出并打印第150个丑数。方法1(简单)算法循环所有的正整数,直到丑数的个数小于n,如果一个整数是丑数,那么就增加丑数数目。检查一下这个数字是

2016-11-04 10:58:19 376

OSGi in Action

HIGHLIGHT OSGi in Action is the definitive guide to OSGi, the hottest technology available for creating modular enterprise Java applications. DESCRIPTION What is OSGi? Simply put, OSGi is a standardized technology that allows developers to create the highly modular Java applications that are required for enterprise development. OSGi lets you install, start, stop, update, or uninstall components without taking down your entire system. The interest in OSGibased applications has exploded since major vendors like Sun, Spring, Oracle, BEA, and IBM have gotten behind the standard. OSGi in Action is a comprehensive guide to OSGi with two primary goals. First, it provides a clear introduction to OSGi concepts with examples that are relevant both for architects and developers. Then, it explores numerous practical scenarios and techniques, answering questions like: How much of OSGi do you actually need? How do you embed OSGi inside other containers? What are the best practices for moving legacy systems to OSGi? KEY POINTS Highly-visible authors and reviewers are core members of OSGI community. This book is based on hands-on experience with OSGI. Authors have contributed to high-profile OSGi implementations, including Apache Felix.

2017-10-05

C++编程思想 两卷合订本

(美)Bruce Eckel 著 刘宗田 袁兆山 潘秋菱 等译

2017-10-01

iOS编程 第四版

作者[美] Christian Keur / [美] Aaron Hillegass / [美] Joe Conway

2017-10-01

apt-mirror-api-0.1.jar

Files contained in apt-mirror-api-0.1.jar: META-INF/MANIFEST.MF META-INF/maven/com.moparisthebest.aptIn16/apt-mirror-api/pom.properties META-INF/maven/com.moparisthebest.aptIn16/apt-mirror-api/pom.xml com.sun.mirror.apt.AnnotationProcessor.class com.sun.mirror.apt.AnnotationProcessorEnvironment.class com.sun.mirror.apt.AnnotationProcessorFactory.class com.sun.mirror.apt.AnnotationProcessorListener.class com.sun.mirror.apt.AnnotationProcessors.class com.sun.mirror.apt.Filer.class com.sun.mirror.apt.Messager.class com.sun.mirror.apt.RoundCompleteEvent.class com.sun.mirror.apt.RoundCompleteListener.class com.sun.mirror.apt.RoundState.class com.sun.mirror.declaration.AnnotationMirror.class com.sun.mirror.declaration.AnnotationTypeDeclaration.class com.sun.mirror.declaration.AnnotationTypeElementDeclaration.class com.sun.mirror.declaration.AnnotationValue.class com.sun.mirror.declaration.ClassDeclaration.class com.sun.mirror.declaration.ConstructorDeclaration.class com.sun.mirror.declaration.Declaration.class com.sun.mirror.declaration.EnumConstantDeclaration.class com.sun.mirror.declaration.EnumDeclaration.class com.sun.mirror.declaration.ExecutableDeclaration.class com.sun.mirror.declaration.FieldDeclaration.class com.sun.mirror.declaration.InterfaceDeclaration.class com.sun.mirror.declaration.MemberDeclaration.class com.sun.mirror.declaration.MethodDeclaration.class com.sun.mirror.declaration.Modifier.class com.sun.mirror.declaration.PackageDeclaration.class com.sun.mirror.declaration.ParameterDeclaration.class com.sun.mirror.declaration.TypeDeclaration.class com.sun.mirror.declaration.TypeParameterDeclaration.class com.sun.mirror.type.AnnotationType.class com.sun.mirror.type.ArrayType.class com.sun.mirror.type.ClassType.class com.sun.mirror.type.DeclaredType.class com.sun.mirror.type.EnumType.class com.sun.mirror.type.InterfaceType.class com.sun.mirror.type.MirroredTypeException.class com.sun.mirror.type.MirroredTypesException.class com.sun.mirror.type.PrimitiveType.class com.sun.mirror.type.ReferenceType.class com.sun.mirror.type.TypeMirror.class com.sun.mirror.type.TypeVariable.class com.sun.mirror.type.VoidType.class com.sun.mirror.type.WildcardType.class com.sun.mirror.util.DeclarationFilter.class com.sun.mirror.util.DeclarationScanner.class com.sun.mirror.util.DeclarationVisitor.class com.sun.mirror.util.DeclarationVisitors.class com.sun.mirror.util.Declarations.class com.sun.mirror.util.SimpleDeclarationVisitor.class com.sun.mirror.util.SimpleTypeVisitor.class com.sun.mirror.util.SourceOrderDeclScanner.class com.sun.mirror.util.SourcePosition.class com.sun.mirror.util.TypeVisitor.class com.sun.mirror.util.Types.class

2016-11-15

《Java编程思想 第四版》源码

《Java编程思想 第四版》源码

2016-11-15

空空如也

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

TA关注的人

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