自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 《重构》摘要

1. 为何重构?(1)改进软件设计。(2)使软件更易被理解。(3)帮助你找到bug。(4)帮助你提高编程速度。 2. 何时重构?(1)添加功能时。(2)修补错误时。(3)复审代码时。 3. 何时不该重构?(1)现有代码根本不能正常运作,需要重写。(2)如果项目已近最后期限,应该避免重构。 4. 性能优化(1)时间预算法。(2)...

2013-04-08 10:57:29 251

原创 【转】VMware vSphere 端口组

http://club.techtarget.com.cn/space/viewspacepost.aspx?postid=1072 “虚拟机不是将其 vNIC 连接到 vSwitch 上的特定端口,而是连接到端口组。”——官方文档端口组是虚拟化领域里独有的概念,准确的说是VMware为虚拟化平台引入的概念;同时,可以把它理解为一种执行策略,这种策略可以提供增强的网络安全、网络分段、更...

2012-09-24 16:05:22 3112

原创 java clone

【转】http://zhengjunwei2007-163-com.iteye.com/blog/1068491由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。比如函数参数类型是自定义的类时,此时便是引用传递而不是值传递。 首先要实现Cloneable接口,然后在重载clone方法,最后在clone()方法中调用了super...

2012-02-27 17:12:51 169

原创 Java程序性能优化

一、避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快。例子:import java.util.Vector;class CEL {    void method (Vector vector) {        for (int i = 0; i < vector.size (); ...

2012-02-27 17:02:42 134

原创 Java 访问权限

[转]http://www.cnblogs.com/itao/archive/2011/07/28/2119823.html 1、private修饰词,表示成员是私有的,只有自身可以访问;   2、protected,表示受保护权限,体现在继承,即子类可以访问父类受保护成员,同时相同包内的其他类也可以访问protected成员。   3、无修饰词(默认),表示包访问权限(frien...

2012-02-27 16:54:48 107

原创 Java方法继承、方法重载、方法覆盖小总结

 [转] http://blog.csdn.net/cdsnmdl/article/details/39686881、方法继承:利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类。当Sub类和Base类在同一个包时Sub类继承Base类中的public/protected/默认级别的变量个方法在不同包时继承public/protected级别的变量和...

2012-02-27 16:42:42 105

原创 全概率公式和Bayes公式

假设导致事件A发生的“原因”有Bi(i=1,2,…,n)。它们互不相容,现已知事件A确已经发生了,若要估计它是由“原因”Bi所导致的概率,则可用Bayes公式求出.即可从结果分析原因. 有朋友自远方来,他坐火车、坐船、坐汽车、坐飞机的概率分别是0.3、0.2、0.1和0.4,而他坐火车、坐船、坐汽车、坐飞机迟到的概率分别是0.25、0.3、0.1和0,实际上他迟到了,请推测他坐哪种交通工具...

2011-09-22 21:39:55 224

原创 卡塔兰数

[转]http://gpww.blog.163.com/blog/static/118268164200996103932731/  问题《编程之美》中提到了“买票找零”问题,查阅了下资料,此问题和卡特兰数 Cn有关,其定义如下:卡特兰数真是一个神奇的数字,很多组合问题的数量都和它有关系,例如:Cn= 长度为 2n的 Dyck words的数量。 Dyck words是由...

2011-09-22 21:18:59 132

原创 海量数据处理之Bloom Filter详解

【转】http://blog.csdn.net/v_july_v/article/details/6685894海量数据处理之Bloom Filter详解  前言    本博客内曾已经整理过十道海量数据处理面试题与十个方法大总结。接下来,本博客内会重点分析那些海量数据处理的方法,并重写十道海量数据处理的面试题。如果有任何问题,欢迎不吝指正。谢谢。一、什么是Bloom Filt...

2011-09-22 08:40:31 108

原创 十七道海量数据处理面试题与Bit-map详解

[转]http://blog.csdn.net/v_july_v/article/details/6685962 十七道海量数据处理面试题与Bit-map详解作者:小桥流水,redfox66,July。文章性质:整理。前言    本博客内曾经整理过有关海量数据处理的10道面试题(十道海量数据处理面试题与十个方法大总结),此次除了重复了之前的1...

2011-09-22 08:39:20 208

原创 判断素数

#include <math.h>bool IsSushu(int n){ bool IsSushuFlg = true; if( n <= 1) { return false; } for( int i = 2; i <= (int)sqrt((double)n); i++ ) { if( 0 == n % i )...

2011-09-15 15:15:26 105

原创 输出100000以内的素数

 #include <fstream.h>#define N 100000int sieve[N + 1];void main(){ for(int i = 2; i <= N; i++) sieve[i] = 1; for(i = 2; i <= N / 2; i++) sieve[i * 2] = 0; int p = 2; wh...

2011-09-15 15:13:23 3659

原创 shell编程(5)

写脚本实现,可以用shell、perl等。在目录/tmp下找到100个以abc开头的文件,然后把这些文件的第一行保存到文件new中#!/bin/bashhead_line=newfor file in `find /tmp -type f -name "abc*" | head -n 100 `docat $file | head -n 1 >> $head_linedoneexit其...

2011-09-07 17:21:36 110

原创 shell编程(4)

写脚本实现,可以用shell、perl等。把文件b中有的,但是文件a中没有的所有行,保存为文件c,并统计c的行数。用grep实现grep -xvFf a b | tee c | wc -lgrep -x 匹配一整行grep -v 逆匹配,即寻找不匹配的grep -F 从文件中匹配grep -f 带匹配的字符串存放在文件中grep -xvFf a b 表示:从文件b中匹配文件a中的每一行(由于有v,...

2011-09-07 17:19:39 166

原创 shell编程(3)

[转]http://blog.sina.com.cn/s/blog_4b086af10100cero.html设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。程序实现及注释如下:#! /bin/bash#adddir.shi...

2011-09-07 16:49:03 182

原创 shell编程(2)

[转]http://blog.sina.com.cn/s/blog_4b086af10100ceq0.html编写shell程序,实现自动删除50个账号的功能。账号名为stud1至stud50。程序实现及注释如下:#! /bin/bash#deluser.sh#考察while循环i=1while [ $i -le 50]do#查看账户是否存在:只需要在/etc/passwd文件...

2011-09-07 16:37:48 158

原创 shell编程(1)

[转]http://blog.csdn.net/djbtestingsky/article/details/3915592用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到 /dev 目录下。程序实现以及注释如下:#! /bin/bash#cp.sh#shell脚本的第一行是必须按照上面那种格式写,因为它表示的含义是#当前的shell脚本使用/bin/bash处理;第...

2011-09-07 16:04:25 106

原创 判断单链表是否存在环,判断两个链表是否相交问题详解

[转]http://www.cppblog.com/humanchao/archive/2008/04/17/47357.aspx有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。问题:1、如何判断一个链表是不是这类链表?2、如果链表为存在环,如何找到环的入口点?解答:一、判断链表是否存在环,办法为:设置两个指针(fast, slo...

2011-09-06 09:36:54 79

原创 分解质因数

 #include <stdio.h> void main() { int a,i,j; printf("输入一个正整数:" ); scanf("%d" ,&a); printf("\n" ); printf("%d=" ,a); j = (a+1)/2; for (i=2...

2011-09-03 14:46:02 134

原创 关于 java 您不知道的 5 件事 系列

http://www.ibm.com/developerworks/cn/java/j-5things2.html http://www.ibm.com/developerworks/cn/java/j-5things3.html https://www.ibm.com/developerworks/cn/java/j-5things4.html http://www.ib...

2011-08-31 15:16:09 118

原创 ConcurrentHashMap与CopyOnWriteArrayList比较

【转】http://www.iteye.com/topic/841519ConcurrentHashMap ConcurrentHashMap引入了Segment,每个Segment又是一个hashtable,相当于是两级Hash表,然后锁是在Segment一级进行的,提高了并发性。缺点是对整个集合进行操作的方法如 size() 或 isEmpty()的实现很困难,基本无法得到精准的数据。Se...

2011-08-31 15:10:59 190

原创 ConcurrentHashMap Collections.synchronizedMap和Hashtable讨论

[转]http://www.w3china.org/blog/more.asp?name=hongrui&id=37960在Java类库中出现的第一个关联的集合类是Hashtable,它是JDK1.0的一部分。Hashtable提供了一种易于使用的、线程安全的、关联的map功能,这当然也是方便的。然而,线程安全性是凭代价换来的――Hashtable的所有方法都是同步的。此时,无竞争的同...

2011-08-31 15:09:26 61

原创 JAVA的Random类

【转】http://www.cnblogs.com/Fskjb/archive/2009/08/29/1556417.htmlRandom类 (java.util)          Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。相同种子数的Random对象,相...

2011-08-30 15:22:43 61

原创 Direct vs non-direct ByteBuffer

[转]http://littcai.iteye.com/blog/300581这两种类型的ByteBuffer相信大家都知道,但是两者的区别在什么地方呢?在不同的环境下采用哪种类型的ByteBuffer会更有效率呢?先解释一下两者的区别: Non-direct ByteBuffer内存是分配在堆上的,直接由Java虚拟机负责垃圾收集,你可以把它想象成一个字节数组的包装类,如下伪码所示:...

2011-08-30 14:55:39 85

原创 详细介绍Java垃圾回收机制

【转】http://developer.51cto.com/art/201010/229647_2.htm51CTO曾介绍过《深入Java核心 探秘Java垃圾回收机制》,Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指...

2011-08-29 22:57:33 79

原创 System.gc() 和System.runFinalization()

The   Java   language   provides   some   built-in   routines   for   controlling   garbage   collection:   the   methods   System.gc()   and   System.runFinalization().   System.gc()   requests   tha...

2011-08-29 22:52:39 166

原创 Java对象的强、软、弱和虚引用

[转]http://developer.51cto.com/art/200906/130447_3.htm1.Java对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周...

2011-08-29 21:43:17 74

原创 把字符串转换成整数

【转】http://zhedahht.blog.163.com/blog/static/25411174200731139971/  题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。 分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程序员就这道题写出的代码有很大区别,可以说这道题能够很好地反应出程序员的思维...

2011-08-24 19:26:31 95

原创 用两个栈实现队列

【转】http://zhedahht.blog.163.com/blog/static/2541117420073293950662/ 题目:某队列的声明如下:template<typename T> class CQueue{public:      CQueue() {}      ~CQueue() {}      void appendTail(const T&am...

2011-08-24 19:18:10 58

原创 反转链表

【转】http://zhedahht.blog.163.com/blog/static/2541117420073471124487/ 题目:输入一个链表的头结点,反转该链表,并返回反转后链表的头结点。链表结点定义如下:struct ListNode{      int       m_nKey;      ListNode* m_pNext;};分析:这是一道广为流传的微软面试题...

2011-08-24 17:24:23 52

原创 最长公共子串

【转】http://zhedahht.blog.163.com/blog/static/254111742007376431815/ 题目:如果字符串一的所有字符按其在字符串中的顺序出现在另外一个字符串二中,则字符串一称之为字符串二的子串。注意,并不要求子串(字符串一)的字符必须连续出现在字符串二中。请编写一个函数,输入两个字符串,求它们的最长公共子串,并打印出最长公共子串。 例如:输...

2011-08-24 17:01:22 63

原创 左旋转字符串

【转】http://zhedahht.blog.163.com/blog/static/2541117420073993725873/ 题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数。要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。分析:如果不考虑时间和空间...

2011-08-24 16:57:14 71

原创 跳台阶问题

【转】http://zhedahht.blog.163.com/blog/static/25411174200731844235261/ 题目:一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有多少总跳法,并分析算法的时间复杂度。分析:这道题最近经常出现,包括MicroStrategy等比较重视算法的公司都曾先后选用过个这道题作为面试题或者笔试题。首先我们考虑最简单的情...

2011-08-24 16:37:11 74

原创 和为n连续正数序列

【转】http://zhedahht.blog.163.com/blog/static/25411174200732711051101/ 题目:输入一个正数n,输出所有和为n连续正数序列。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。分析:这是网易的一道面试题。这道题和本面试题系列的第10题有些类似。我们用两个数sm...

2011-08-24 16:23:51 70

原创 二元树的深度

【转】http://zhedahht.blog.163.com/blog/static/25411174200732975328975/ 题目:输入一棵二元树的根结点,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。例如:输入二元树:                                            10 ...

2011-08-24 16:09:53 76

原创 调整数组顺序使奇数位于偶数前面

【转】http://zhedahht.blog.163.com/blog/static/25411174200741295930898/ 题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。分析:如果不考虑时间复杂度,最简单的思路应该是从头扫描这个数组,每碰到一个偶数时,拿出这个数字,并把位于这个数字后面的...

2011-08-24 16:05:30 60

原创 从尾到头输出链表

【转】http://zhedahht.blog.163.com/blog/static/2541117420079237185699/ 题目:输入一个链表的头结点,从尾到头反过来输出每个结点的值。链表结点定义如下:struct ListNode{      int       m_nKey;      ListNode* m_pNext;};分析:这是一道很有意思的...

2011-08-24 15:58:25 65

原创 在O(1)时间删除链表结点

【转】http://zhedahht.blog.163.com/blog/static/254111742007112255248202/ 题目:给定链表的头指针和一个结点指针,在O(1)时间删除该结点。链表结点的定义如下:struct ListNode{      int        m_nKey;      ListNode*  m_pNext;};函数的声明...

2011-08-24 15:49:27 55

原创 找出数组中两个只出现一次的数字

【转】http://zhedahht.blog.163.com/blog/static/2541117420071128950682/ 题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。分析:这是一道很新颖的关于位运算的面试题。首先我们考虑这个问题的一个简单版本:一个数组里除了一个数字之...

2011-08-24 15:24:12 74

原创 在字符串中删除特定的字符

【转】http://zhedahht.blog.163.com/blog/static/25411174200801931426484/ 题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。分析:这是一道微软面试题。在微软的常见面试题中,与字符串...

2011-08-24 15:16:02 112

空空如也

空空如也

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

TA关注的人

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