CSDN博客地址---http://blog.csdn.net/bug_moving GitHub地址---https://github.com/androidwolf
Given a linked list, remove the nth node from the end of list and return its head. For example, Given linked list: 1->2->3->4->5, and n = 2. After removing the second node fr
Write a function to find the longest common prefix string amongst an array of strings. public String longestCommonPrefix(String[] strs) { if (strs == null || strs.length == 0)
Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 to 3999. 先来科普一波罗马数字吧。 大约在两千五百年前,罗马人还处在文化发展的初期,当时他们用手指作为计算工具.为了表示一、二、三、四个物体,就分别伸出一、二、三、四
Determine whether an integer is a palindrome. Do this without extra space. Some hints: Could negative integers be palindromes? (ie, -1) If you are thinking of converting the integer to s
Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible
Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 我的第一感觉我就要把它弄成字符串,然后一下子弄出来,结果也实现了,可是超时了。 public int reverse(int x) { String str = x
The string “PAYPALISHIRING” is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H
[编程题] 比较重量 小明陪小红去看钻石,他们从一堆钻石中随机抽取两颗并比较她们的重量。这些钻石的重量各不相同。在他们们比较了一段时间后,它们看中了两颗钻石g1和g2。现在请你根据之前比较的信息判断这两颗钻石的哪颗更重。 给定两颗钻石的编号g1,g2,编号从1开始,同时给定关系数组vector,其中元素为一些二元组,第一个元素为一次比较中较重的钻石的编号,第二个元素为较轻
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 i
You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return i
Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution. Example: Given n
推荐先看我的一篇介绍Set去重的博文地址是 http://blog.csdn.net/bug_moving 看了这个之后,再来看下面的程序基本就能看懂了 题目 我也不太记得,因为是朋友给我口述的,然后给了我一个截图,看了图片大致也能知道题目要我们做什么 package yn; import java.util.ArrayList; import java.
三者异同 List,Set都是继承自Collection接口; List特点:元素有放入顺序,元素可重复; Set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的); Map特点:元素按键值对存储,无放入顺序 (应该知道什么是键值对吧!) ; List接口有三个实现类:Link
命令模式(别名:动作,事物) 为系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 Command Pattern(Another name:Action,Transaction) Encapsulate a request as an object, thereby letting you paramete
外观模式 为系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 Facade Pattern Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface t
中介者模式 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 Mediator Pattern Define an object that encapsulates how a set of objects interact. Mediator promotes loose couplin
生成器模式 将一个复杂对象的构建与它的表示分离,使同样的构建过程可以创建不同的表示。 Builder Pattern Separate the construction of a complex object from its representation so that the same construction process can create differ
给定一个数组,除了一个数出现1次之外,其余数都出现3次。找出出现一次的数。如:{1, 2, 1, 2, 1, 2, 7},找出7.格式:第一行输入一个数n,代表数组的长度,接下来一行输入数组A[n],(输入的数组必须满足问题描述的要求),最后输出只出现一次的数。 package yn; import java.util.Scanner; public class Out
策略模式(别名:政策) 定义一系列算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。 Strategy Pattern(Another Name: Policy) Define a family of algorithms, encapsulate each one, and make them inter changeab
java的基本数据类型 数据类型 大小 字节 范围 默认值 byte(字节) 8 1 -128-127 0 shot(短整型) 16 2 -32768 - 32768 0 int(整型) 32 4 -2147483648-2147483648 0 long(长整型) 64 8
原型模式 用原型实例制定创建对象的种类,并且通过复制这些原型创建新的对象。 Prototype Pattern Specify the kinds of objects to create using a prototypical instance, and create new objects by copying this prototype. 类图
单例模式 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 Singleton Pattern Ensure a class only has one instance, and provide a global point of access to it. 类图 模式的结构与使用 单例方法模式的结构中包括一种角色。 + 单件类(Singl
组合模式 将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使用户对单个对象和组合对象的使用具有一致性。 Composite Pattern Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat
桥接模式(别名:柄体模式) 将抽象部分于它的实现部分分离,使它们都可以独立地变化。 Bridge Pattern(Another Name:Handle-Body) Decouple an abstraction from its implementation so that the two can vary independently. 类图 模式
模板方法模式 定义一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法使子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 Template Method Pattern Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Te
代理模式 为其他对象提供一种代理以控制对这个对象的访问。 Proxy Pattern Provide a surrogate or placeholder for another object to control access to it. 类图 模式的结构与使用 代理方法模式的结构中包括三种角色。 + 抽象主题(Subject):抽象主题是一
访问者模式(别名:虚拟构造) 表示一个作用于某对象结构中的各个元素的操作。它可以在不改变各个元素的类的前提下定义作用于这些元素的新操作。 Visitor Pattern Represent an operation to be preformed on the elements of an object structure. Visitor lets you def
解释器模式 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 Interpreter Pattern Given a language, define a representation for its grammar along with an interpreter that uses the representat
备忘录模式(别名:标记) 在不破坏封装性的前提下,捕捉一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态。 Memento Pattern(Another Name: Token) Without violating encapsulation, capture and externalize an object origina
享元模式 运用共享技术有效的支持大量细粒度的对象。 Flyweight Pattern Use sharing to support large numbers of fine-grained objects efficiently. 类图 模式的结构与使用 享元方法模式的结构中包括三种角色。 + 享元接口(Flyweight):是一个接口,该接
状态模式(别名:状态对象) 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。 State Pattern(Another Name: Object for States) Allow an object to alert its behavior when its internal state changes. The object will
观察者模式(别名:依赖,发布-订阅) 定义对象间的一种一对多的依赖关系,当一个对象的状态发生变化时,所有依赖它的对象都得到通知并被自动更新。 Observer Pattern(Another Name: Dependents, Publish-Subscribe) Define a one-to-many dependency between objects so
装饰模式(别名:包装类) 动态地给对象添加一些额外的职责。就功能来说装饰模式相比生成子类更为灵活。 Decorator Pattern(Another Name: Wrapper) Attach additional responsibilities to an object dynamically。Decorators provide a flexible alt
抽象工厂模式(别名:配套) 提供一个创建一系列或相互依赖对象的接口,而无需指定它们具体的类。 Abstract Factory Pattern(Another Name: Kit) Provide an interface for creating an families of related or dependent objects without specify
简单工厂方法模式(别名:虚拟构造) 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。 Simple Factory Pattern(Another Name: Virtual Constructor) Define an interface for creating an object, but let
责任链模式 使多个对象都有机会都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 Chain of Responsibility Pattern A void coupling the sender of a request to its receiver by giving mor
适配器模式(别名:包装类) 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 Adapter Pattern(Another Name: wrapper) Convert the interface of a class into another interface clients expect
看书必不可少 操作系统,计算机网络,常用数据结构与算法,数据库,这四大方向每个认真读过一本500页的外国人写的教材,并编写过一些玩具代码。 java相关的书也看个三四本: core java 深入理解java虚拟机 jcip effective java 然后csapp有空的话也可以看一看 至于项目,我想你总是参与过几个了,斟酌一下是否能写到简历上去。如果写上
StringTokenizer有两个常用的方法: 1.hasMoreElements()。这个方法和hasMoreElements()方法的用法是一样的,只是StringTokenizer为了实现Enumeration接口而实现的方法,从StringTokenizer的声明可以看到:class StringTokenizer implements Enumeration。
如图输入一行命令之后,会在你的blog目录下source目录下_posts目录下创建test.md文件 接下来我把test.md改成了CSDN–Me.md,因为我觉得测试的还是太low了,直接上狠文章。 这样一篇博客就写好了,用下面的指令提交一下,你就会在你搭建的博客上发现有一篇文章出现了。这个时候博客还是很丑的,我就不上图了。 hexo d -g 更改主
今天晚上经过个把小时的折腾,把博客搭建起来了,来写个博客总结一下. 网上的资料很多,希望大家一路顺利,因为这种东西一遇到问题就很烦很烦. 1. 安装Github for windows 下载 Github for windows 并执行即可完成安装(在线安装,会有点慢)。这个软件的的好处是有一个带GUI的界面,还有一个终端界面.如图所示 2. 安装Node.js
迭代器模式(别名:游标) 提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。 Iterator Pattern(Another Name: Cursor) Provide a way to access the elements of an aggregate object sequentially without exposing its u
Reflection ClassLoader的类加载机制 并非一次性加载。 需要的时候加载(运行期间动态加载)。 java-verbose:class可以观察类的具体加载过程。 static语句块在加载后执行一次。 dynamic语句块每次new新的对象都会执行,等同于构造方法中语句,用得也比较少。 首先bootstrap class loader把其他的C
RegularExpressions 字符串处理利器 正则表达式语法 正则表达式包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。 特殊字符 下表包含了单字符元字符的列表以及它们在正则表达式中的行为。 若要匹配这些特殊字符之一,必须首先转义字符,即,在字符前面加反斜杠字符 ()。 例如,若要搜索“+”文本字符,可使用表达式“+”。 元字符
OSI参考模型 TCP/IP参考模型 应用层 表示层 应用层 会话层 传输层 传输层 网络层 网络层 数据链路层 物理+数据链路层 物理层 IP协议 最大的贡献就是给大家提供了独一无二的IP地址。 A类地址 8位网络
字节流 字符流 输入流 InputStream Reader 输出流 OutputStream Writer 按数据流的方向不同可以分为输入流和输出流。 按处理数据单位不同可以分为字节流和字符流。 按照功能不同可以分为节点流和处理流。 上来就是这样的管道。现在来细细理解一下,如果一根管
联想G480类似没有小键盘开关的机器这类机器有个很烦的事情就是如果不小心把外接键盘的小键盘锁按了没关然后又到了一个没有外接键盘的地方,小键盘是关不掉的,必须按着fn输入,是不是超级烦。 这里介绍一个不用外接键盘开关电脑小键盘的技巧。 是不是超级方便,麻麻再也不用担心我的键盘啦。。 $(function () {
基本概念 线程是一个程序内部的顺序控制流 Java的线程是通过java.lang.Thread类来实现的。main函数是一个主线程,用户可以通过创建Thread的实例来创建新的线程。每一个线程都必须实现run方法。通过Thread类的start方法来启动一个线程。 两种方式实现,一种是线程类实现Runnable接口;二种就是定义一个Thread的子类并重写其run方法。
定义和用法 overflow-x 属性规定是否对内容的左/右边缘进行裁剪 - 如果溢出元素内容区域的话。 提示:使用 overflow-y 属性来确定对上/下边缘的裁剪。 默认值: visible 继承性: no 版本: CSS3 JavaScript 语法: object.style.overflowX=”scroll” 语法 overflow-
把字符串写入XML文件 /** * 创建文件夹 * @param filePath * @return */ public boolean makeDirs() { String folderName = IReportServer.getTempDir() + File.sep