自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mysql与Oracle的区别

1.  Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。2. Oracle支持大并发,大访问量,是OLTP最好的工具。3. 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。4.Ora

2016-05-09 11:24:56 1445 1

转载 NIO与IO

下表总结了Java NIO和IO之间的主要差别,我会更详细地描述表中每部分的差异。复制代码代码如下:IO                NIO面向流            面向缓冲阻塞IO            非阻塞IO无                选择器面向流与面向缓冲Java NIO和IO之间第一个最大的区别是,IO是面向流

2016-01-04 16:45:17 569

原创 MySQL的事务处理及隔离级别

事务是DBMS得执行单位。它由有限得数据库操作序列组成得。但不是任意得数据库操作序列都能成为事务。一般来说,事务是必须满足4个条件(ACID)      原子性(Autmic):事务在执行性,要做到“要么不做,要么全做!”,就是说不允许事务部分得执行。即使因为故障而使事务不能完成,在rollback时也要消除对数据库得影响!      一致性(Consistency):事务操作之后

2016-01-04 09:49:49 838

转载 深入理解Java的接口和抽象类

对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲:  一.抽象类  二.接口  三.抽象类和接口的区别  若有不正之处,请多多谅解

2015-12-25 17:36:27 595

原创 两个软硬程度一样的鸡蛋,它们在某一层摔下会碎,有个100层的建筑,要求最多用两个鸡蛋确 定鸡蛋安全下落的临界位置,给出临界位置?如果是n层楼,m个鸡蛋,请给出确定临界位置的算法

题目:问题:一幢大楼共计100层,某种类型的鸡蛋从某一楼层及其以上楼层摔下来时会被打破,从该层楼(即临界楼层)以下楼层摔下该鸡蛋,鸡蛋不会出现破损。现给你2个完全一样的该种类型的鸡蛋,问:如何通过这2个鸡蛋找到该临界楼层时,所用的摔鸡蛋次数最少? 思考:给了我们2个鸡蛋,意思就很明显,有1个鸡蛋起到关键作用,它可以被打破,以告诉我们临界楼层大致在什么位置。初探:

2015-12-25 11:32:07 6662

原创 java常见的异常

1. 粉红色的是受检查的异常(checked exceptions),其必须被 try{}catch语句块所捕获,或者在方法签名里通过throws子句声明.受检查的异常必须在编译时被捕捉处理,命名为 Checked Exception 是因为Java编译器要进行检查,Java虚拟机也要进行检查,以确保这个规则得到遵守.2. 绿色的异常是运行时异常(runtime exceptions),需

2015-12-24 17:34:25 743

原创 synchronized与volatile异同

volatile关键字有什么用?  恐怕比较一下volatile和synchronized的不同是最容易解释清楚的。volatile是变量修饰符,而synchronized则作用于一段代码或方法;看如下三句get代码: int i1; int geti1() {return i1;} volatile int i2; int geti2() {return i2;} int i3; synch

2015-12-23 16:01:29 499

转载 吃透红黑树

接下载:http://www.cs.princeton.edu/~rs/talks/LLRB/RedBlack.pdf------------------------------红黑树系列,六篇文章于今日已经完成:1、教你透彻了解红黑树2、红黑树算法的实现与剖析3、红黑树的c源码实现与剖析4、一步一图一代码,R-B Tree5、红黑树插入和删除结点的全程演示6、红黑树的c++完

2015-12-23 14:09:23 434

原创 JAVA 中BIO,NIO,AIO的理解

在高性能的IO体系设计中,有几个名词概念常常会使我们感到迷惑不解。具体如下: 序号 问题 1 什么是同步? 2 什么是异步? 3 什么是阻塞? 4 什么是非阻塞? 5 什么是同步阻塞? 6 什么是同步非阻塞? 7 什么是异步阻塞? 8 什么是异步非阻塞? 散仙不才,在查了一部分资料后,愿试着以通俗易懂的方式解释下这几个名词。如有不足之处,还望告知。

2015-12-23 10:47:29 518

原创 Java中堆与栈的区别

在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。      当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。      堆内存用来存放由new创建的对象和数组。      在堆中分配的内存,由Java虚拟机的

2015-12-09 11:12:37 493

转载 一个百度员工的离职感悟

2015年10月20日,百度宣布停止社招; 阿里巴巴马云年初就定了规矩–出一个进一个,不多招一个人,校园招聘从3000减少到400人,应届生起薪大降,运营到了6000,被人大骂侮辱性Offer; 腾讯则刚刚确认,关闭了外包相关的招聘渠道。 也不仅仅是BAT:华为在最近对员工的考核和淘汰制度升级.今年8月,联想裁员3200人凤凰网裁员转型搜狐今年年初裁员2000人。国外的企业,裁员的更是数不胜数

2015-12-08 16:02:50 1045

原创 Java和C/C++的差异总结

总结一下Java的小知识,只是想稍微提醒一下自己这些基础的东西,放在这里,随时可以阅览和添加一下,以免走错了方向。1.面向对象程序设计面向对象程序设计语言可以直观的反映客观世界的真实表象,使软件开发人员可运用人类认识事物所采用的一般思维方式来进行软件开发,与自然语言差距最小,是当今软件开发与应用的主流技术。Java是纯面向对象的编程语言。2.几个概念a.JavaAp

2015-12-08 15:17:10 2322

原创 SpringMVC下的kindeditor实现

本JSP程序是演示程序,建议不要直接在实际项目中使用。如果您确定直接使用本程序,使用之前请仔细确认相关安全设置。 使用方法:1. 解压zip文件,将所有文件复制到Tomcat的webapps/kindeditor目录下。2. 将kindeditor/jsp/lib目录下的3个jar文件复制到Tomcat的lib目录下,并重新启动Tomcat。* common

2015-11-24 16:51:03 1735

转载 为什么“高大上”的算法工程师变成了数据民工?

算法与算法工程师先来一段我在知乎里回答“做算法工程师是一种怎样的体验?”的答案(其中的思想并非原创,而是山寨自新加坡某大学一门Quantitative Investment课程的ppt)理想中的算法工程师:提出假设->收集数据->训练模型->解释结果。实际中的算法工程师:提出假设->收集数据->预处理->预处理->训练模型->调试->调试->重新收集数据->预处理->收集更多数据-

2015-11-18 15:27:33 4469

原创 sql函数总结

函数的语法  内建 SQL 函数的语法是:  SELECT function(列) FROM 表函数的类型  在 SQL 中,基本的函数类型和种类有若干种。函数的基本类型是:  Aggregate 函数 Scalar 函数合计函数(Aggregatefunctions)  Aggregate 函数的操作面向一系列的值,并返回一个单一的值。  注释

2015-11-18 15:02:38 752

原创 Spring的IOC图形理解

1. IoC理论的背景我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑。图1:软件系统中耦合的对象如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各个齿轮分别带动时针、分针和秒针顺时针旋转,从而在表盘上产生正确的时间。图1中描述的就是这样的一个齿轮组,它拥有多个独立的齿轮,这些齿轮相互啮合

2015-11-17 10:46:03 1134

原创 ssh框架面试总结

1、写出你熟悉的开源框架以及各自的作用(项目中为什么使用SSH)答:框架:hibernate,spring,struts1/struts2.Hibernate主要用于数据持久化;封装了JDBC操作;还提供了一个易用的、高效率的对象关系映射框架;Spring 的控制反转能起到解耦合的作用;Struts 主要用于请求处理的流程控制;struts是基于MVC模式的,很好的将应用程序进

2015-11-16 16:20:24 3579 1

原创 硅谷跳槽必备

前言这是我在硅谷找工作用到的一些资料和网站,虽然都是英文的,但都是一些干货,大家都可以借鉴一下,里面有很多有意思的观点和最新动态。并且也包括了很多跟创业相关的工具,不论你是在创业浪潮中,还是希望进入到一家快速上升的公司,抑或是难以选择一个最适合自己的Offer,这里都会有工具能帮助到你。在我的新书 “程序员面试白皮书”(An Ultimate Guide to Coding Inter

2015-11-13 15:05:38 1284

原创 移动开发工程师和大数据工程师对比

可能很多人都还很困惑,什么是大数据,其实可以简单的这么理解:大数据就是对大量数据进行有效处理的一种解决方案;因为随着数据量的不断增加,传统的框架及计算模型已经无法满足数据增加的需求,所以出现了一种新型的框架,hadoop框架,用这种框架可以弥补传统框架的不足,能对大数据量进行有效的分析提取等,就可以当成是学一个新的框架一样。对于Android和iOS开发就不在这做过多废话了。     从目

2015-10-27 14:35:23 8701 1

原创 100亿个数取出最大的10000个

题目:100亿个整数,求最大的1万个数,并说出算法的时间复杂度  算法:如果把100亿个数全部读入内存,需要100 0000 0000 * 4B 大约40G的内存,这显然是不现实的。  我们可以在内存中维护一个大小为10000的最小堆,每次从文件读一个数,与最小堆的堆顶元素比较,若比堆顶元素大,  则替换掉堆顶元素,然后调整堆。最后剩下的堆内元素即为最大的1万个数,算法复杂度为O(NlogN)  

2015-10-26 10:42:46 3628

原创 spring的依赖注入理解

Java代码      Sping  框架的核心就是IOC控制反转和DI依赖注入,并通过这两方面实现松耦合。    (1) 使用Ioc,对象是被动的接受依赖类,而不是自己主动去找。容器在实例化的时候主动将它的依赖类注入给它。    亦可以这样理解:控制反转将类的主动权转移到借口上,依赖注入通过xml配置文件在类实例化是将其依赖注入。    (2) 从UML查

2015-10-21 14:02:37 811

转载 阿里面经

写在前面 : 2015 年 7 月初,参加阿里巴巴校招内推, 8 月 15 日拿到研发工程师 JAVA 的 offer 。我的专业并非计算机,也没有在互联网公司实习过,只有一些学习和面试心得,供大家参考。阿里巴巴 90%以上使用 Java ,所以下面的分享也基于 Java 岗,如有表达不准确的地方,请提出建议和指正。         7 月上旬投递简历, 7 月 27 号至 29 号连续三

2015-10-15 10:14:58 1074

原创 数据库常见面试题

1. 主键 超键 候选键 外键主 键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。超 键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余

2015-10-13 16:44:05 1400

原创 稳定排序和不稳定排序

首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前2个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同。在简单形式化一下,如果Ai = Aj,Ai原来在位置前,排序后Ai还是要在Aj位置前。      其次,说一下稳定性的好处。排序算法如果是稳定的,那么从一个键上排序,然后再从另一个键上排序,第一个键排序的结果可以为第二个键排序所用。基数排序就是这样,先按低位排

2015-10-13 12:57:14 483

转载 技术简历的七要七不要

“说不得”,硅谷工程师,拥有丰富的面试官经验,特邀专栏作者。本文内容是“说不得”根据多年面官经验总结,教你如何写好技术简历,提升简历的通过率,以及如何避免在简历中给自己挖“坑”。欢迎在文末留言与说不得老师交流。最近到了校招的招聘高峰。面试了不少人看到了不少求职者的简历,也收到了不少希望内推的简历。每一次有人找我内推的时候,我都会告诉他们很多简历修改的建议,因为每个人几乎都在简历

2015-10-10 13:52:17 705

原创 ==与equals

java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。 ==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。 equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。 ==比较的是2个对象的地址,而equ

2015-10-10 10:59:18 518

原创 Java中HashMap,LinkedHashMap,TreeMap的区别

java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类,分别是HashMap Hashtable LinkedHashMap 和TreeMapMap主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。Hashmap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取

2015-10-09 15:01:15 604

原创 HashMap和Hashtable的区别

HashMap和Hashtable的比较是Java面试中的常见问题,用来考验程序员是否能够正确使用集合类以及是否可以随机应变使用多种思路解决问题。HashMap的工作原理、ArrayList与Vector的比较以及这个问题是有关Java 集合框架的最经典的问题。Hashtable是个过时的集合类,存在于Java API中很久了。在Java 4中被重写了,实现了Map接口,所以自此以后也成了Java

2015-10-09 13:33:55 476

原创 java中List、Map、Set、Collection、Stack、Queue等的使用

java中这几个东西是比较常用的,虽然我用的不多,也正是因为用的不多,所以我一直搞不清楚他们之间的具体用法以及相互之间的关系,现在特单独作为一个东西来总结一下。 本文参考一下资料:1.《java编程思想》一书第11章2.http://blog.sina.com.cn/s/blog_a345a8960101k9vx.html3.http://f51889920

2015-10-09 11:43:41 1144

原创 StringBuilder、StringBuffer和String三者的联系和区别

StringBuilder、StringBuffer和String三者的联系和区别 1. String 类    String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间。    String a = "a"; //假设a指向地址0x0001    a = "b";//重新赋值后a指向地址0x0002,但

2015-10-09 11:19:38 568

原创 ArrayList、LinkedList、Vector区别

1 ArrayList底层是采用数组实现的(并且改数组的类型是Object类型的)2 如果是jdk6的话,采用Array.of()方法来生成一个新的数组,如果是jdk5.0的话,使用的是System.arraycopy方法(将数组拷贝)3 List list = new ArrayList();时,底层会生成一个长度为10的数组来存放对象,如果预先知道list会存放多少个对象的话,最好通过

2015-10-09 10:07:04 487

原创 浅谈Java中的hashcode方法

哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法:1public native int hashCode();  根据这个方法的声明可知,该方法返回一个int类型的数值,并且是本地方法,因此在Object类中并没有给出具体的

2015-10-08 14:07:11 530

原创 java四中引用

从JDK1.2版本开始,把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。  1.强引用  本章前文介绍的引用实际上都是强引用,这是使用最普遍的引用。如果一个对象具有强引用,那就 类似于必不可少的生活用品,垃圾回收器绝不会回收它。当内存空 间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,

2015-10-08 10:40:34 1254

转载 jsp与servlet的联系

JSP与Servlet这篇文章的主要目的不是单纯的介绍JSP,也不是详细的介绍Servlet。这是一篇讲述JSP和Servlet之间关系的基础性文章。这篇文章主要是针对那些学习JSP的人而写的。至于Servlet和JavaBean以及Servlet和XML我的两个同学在他们的文档中将会给出明确的解释。本文的主要结构:1. Servlet是什么?2. JSP与Servlet.3.

2015-09-29 18:19:17 1762

原创 java中公共类object的方法总结

构造方法摘要Object()           方法摘要protected Object clone()           创建并返回此对象的一个副本。boolean equals(Object obj)           指示某个其他对象是否与此对象“相等”。protected void finalize()           当垃圾回收器确定不存在对

2015-09-29 10:28:15 910

原创 Switch能否用string做参数?

在开发java程序的过程中,我们遇到了条件判断首选就是switch,但是java中的switch功能不支持字符串作为条件。这时我们该怎么办呢? ——使用枚举。一、枚举简单了解1、enum是一种数据类型。特殊:是指在枚举中将变量的值一一列出来,变量的值只限于列举出来的值的范围内。特殊到一般化:enmu 就是我们根据自己业务需要定义的同“String,int”相同的数据类型

2015-09-29 10:05:20 7055

原创 从连续数字中寻找缺失的数字

给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数。您在真实的面试中是否遇到过这个题?  Yes样例N = 4 且序列为 [0, 1, 3] 时,缺失的数为2。注意可以改变序列中数的位置。挑战在数组上原地完成,使用O(1)的额外空间和O(N)的时间。分析:感

2015-09-25 10:05:54 2355

原创 从1亿个ip中找出访问次数最多的IP

问题一:        怎么在海量数据中找出重复次数最多的一个算法思想:        方案1:先做hash,然后求模映射为小文件,求出每个小文件中重复次数最多的一个,并记录重复次数。        然后找出上一步求出的数据中重复次数最多的一个就是所求(如下)。 问题二:        网站日志中记录了用户的IP,找出访问次数最多的IP。

2015-09-22 23:50:56 6296 2

转载 面试心得与总结---BAT、网易、蘑菇街

之前实习的时候就想着写一篇面经,后来忙就给忘了,现在找完工作了,也是该静下心总结一下走过的路程了,我全盘托出,奉上这篇诚意之作,希望能给未来找工作的人一点指引和总结, 也希望能使大家少走点弯路 , 如果能耐心读完,相信对你会找到你需要的东西。先说一下LZ的基本情况,LZ是四川某985学校通信专业的研究生(非计算机),大学阶段也就学了C语言,根本没想过最后要成为码农。大四才开始学java,研

2015-09-22 17:45:53 2951

原创 计算机网络面试常考

整理一下计算机网络部分的面试常考点,参考书籍:《计算机网络》第五版 谢希仁的那本,希望对大家有所帮助OSI,TCP/IP,五层协议的体系结构,以及各层协议OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。五层协议     (5层):物理层、数据链路层、网络层、运输层、 应用

2015-09-22 10:10:43 736

空空如也

空空如也

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

TA关注的人

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