摘要: 基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 阅读全文
posted @ 2014-03-21 20:40 狂奔蚂蚁 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序为一种稳定的排序算法,时间复杂度为O(n2),空间复杂度为O(1)选择排序在冒泡排序的基础上做了改进,但为一种不稳定的排序算法,时间复杂度为O(n2),空间复杂度为O(1)插入排序时间复杂度为O(n2),空间复杂度为O(1) 阅读全文
posted @ 2014-03-21 20:37 狂奔蚂蚁 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 1. HashMap概述:HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。2. HashMap的数据结构:在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。 从上图中可以看出,HashMap底层就是一个数组结构,数组中的每一项又是一个链表。当新建一个HashMap的时候,就会初始化一个数组。 源码如下: 阅读全文
posted @ 2014-01-13 17:09 狂奔蚂蚁 阅读(993) 评论(0) 推荐(0) 编辑
摘要: memcached是一种缓存技术, 他可以把你的数据放入内存,从而通过内存访问提速,因为内存最快的, memcached技术的主要目的提速,默认情况下占用的端口号为:11211。在memachec 中维护了一张大的hashtable ,该表是在内存,表的结构是key value字串 (字串,数值,数组,对象,布尔,二进制数据,null)PS:与memcache功能类似的有redis缓存系统。二者区别:redis可以将内存中数据刷入到本地磁盘中。memcache适合操作的数据[变化频繁,具有不稳定性,不需要实时入库]。对memcached进行curd操作的方式:1、基于memcache(memc 阅读全文
posted @ 2014-01-13 17:02 狂奔蚂蚁 阅读(382) 评论(0) 推荐(0) 编辑
摘要: MYSQL索引主要分为四类:主键索引,普通索引(聚合,非聚合),唯一索引,全文索引全文索引,主要是针对对文件,文本的检索, 比如文章, 全文索引针对MyISAM有用。索引的原理:利用二叉树(哈希表)对建立索引的相关列进行重排。创建 :CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title,body) )engine=myisam charset utf8;INSERT INTO articles (tit 阅读全文
posted @ 2014-01-13 11:15 狂奔蚂蚁 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 对mysql优化时一个综合性的技术,主要包括a: 表的设计合理化(符合3NF)b: 添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]c: 分表技术(水平分割、垂直分割)d: 读写[写: update/delete/add]分离e: 存储过程 [模块化编程,可以提高速度]f: 对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ]g: mysql服务器硬件升级h: 定时的去清除不需要的数据,定时进行碎片整理(MyISAM)=========================================================== 阅读全文
posted @ 2014-01-13 10:53 狂奔蚂蚁 阅读(536) 评论(0) 推荐(1) 编辑
摘要: 1、 http协议建立在tcp/ip协议之上,为应用层协议。2、 web开发,数据传输均依赖于http协议。3、 http1.0短链接[已被弃用]和http1.1长链接。http请求的组成部分:请求行,消息报头,请求正文。http响应的组成部分:状态行,消息报头,响应正文。/*******************************详细的http响应******************************/Location:http://www.baidu.com.org/index.phpServer:apacheContent-Encoding:gzip [内容编码支持gzip压缩 阅读全文
posted @ 2014-01-13 10:07 狂奔蚂蚁 阅读(203) 评论(0) 推荐(0) 编辑
摘要: Java的访问权限控制修饰符,从最大权限到最小权限依次是:public、protected、包访问权限(默认,没有关键字)和private。对于类的访问权限只能是:public和包访问权限(但内部类可以是private或protected的);对于类中的成员的访问权限可以是上述的四种。下面是各种访问权限的作用。一、public修饰的类:作用域 当前类同一package普通类其他package普通类同一package子孙类其他package子孙类public√√√√√protected√√×√√默认√√×√×private√××× 阅读全文
posted @ 2013-10-18 19:29 狂奔蚂蚁 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 1.浅复制与深复制概念⑴浅复制(浅克隆)被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。⑵深复制(深克隆)被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深复制把要复制的对象所引用的对象都复制了一遍。2.Java的clone()方法⑴clone方法将对象复制了一份并返回给调用者。一般而言,clone()方法满足:①对任何的对象x,都有x.clone() !=x//克隆对象与原对象 阅读全文
posted @ 2013-10-07 21:15 狂奔蚂蚁 阅读(234) 评论(0) 推荐(0) 编辑
摘要: try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?也许你的答案是在return之前,但往更细地说,我的答案是在return中间执行,请看下面程序代码的运行结果:public classTest { public static void main(String[] args) { System.out. println (new Test().test()); } static int test() { int x = 1; try { Return x; } finally { ++x; } .. 阅读全文
posted @ 2013-09-24 20:07 狂奔蚂蚁 阅读(394) 评论(0) 推荐(0) 编辑