- 博客(22)
- 收藏
- 关注
转载 20个设计模式和软件设计面试问题
不管是参加Java面试还是C#面试,设计模式和软件设计都是任何编程面试中的必问问题。实际上,编程能力和设计技巧是对彼此很好的补充。一个好的程序员通常都是一个好的软件设计人员。他们知道怎么把一个问题分割成一段段代码或者软件设计,但这些能力和技巧并不能凭空而来。你需要持续做大型、小型系统的设计和编码,并且不断从错误中学习。从面向对象设计原则 开始是一个不错的选择。好吧,这篇文章是关于一些在各种面试中频
2014-08-18 15:43:27
742
原创 mongodb学习流水笔记
数据结构: 由三个层次构成:database collection document,分别对应传统数据库的:数据库,表,记录。 mongdb采用BSON结构存储文档,该结构类似Json数据存储 mongdb内部,每个数据库都包含一个.ns文件和一些数据文件(直接可见),这些数据文件会随着数据量的增加而变多,例如:一个名为test的数据库,他的构成为:test.ns,
2014-05-02 17:55:18
1032
原创 cassandra学习流水笔记
cassandra 结合了Bigtable的数据模型以及Dynamo的分布式技术。配置集群: 配置cassandra.yaml文件 1,seeds 所有的节点的seeds要相同 2,listen_address 本机ip 3,rpc_address 本机ip或者0.0.0.0删除节点: ./nodetool removen
2014-05-02 17:54:18
1393
原创 记一道c语言题
题目:#includeint main(){ int* p = (int *)((int*)0 + 4); printf("p %d", p);return 0;}
2014-05-02 16:55:22
584
转载 一天能学会的计算机技术
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 在Quora中看到一个有趣的问题,题目是"What are some useful computer related technical skills I can learn within a day?",哪些有用的计算机技术,是一天能够学会的?后面的回答很高质量,最受欢迎
2013-12-30 21:12:30
926
原创 一致性Hash和DHT
如何在许多数据中快速的找到想要的数据?一个一个的比对肯定非常消耗时间。 Hash函数是一种单向函数,它可以将任意长度的输入变成固定长度的输出,并且,对于一个输出无法找到两个不同的输入。 将资源和url作为hash函数的输入,得到定长的二进制串,并将其存放到一个全局hash表中。 DHT 将之前的全局hash表分散存储到网络上的每个节点上。 例如:
2013-11-24 18:08:42
2362
原创 进程控制:创建执行其他程序的进程
下面程序创建了一个子进程,子进程使用exec族的函数来执行新的程序,以新的进程代替原有的进程。#include#include#includeint main(void){ pid_t pid; if((pid = fork()) < 0) { printf("fork error\n"); exit(1); } else if(0 == pid)
2013-11-22 19:56:11
845
原创 BigTable笔记
NoSQL,即not only SQL,是一种非关系数据存储,不使用SQL语句进行查询。 CAP,BASE和最终一致性是NoSQL数据库存在的三大基石。 CAP原理: C:Consistency 一致性 A: Availability可用性(指的是快速获取数据) P: Tolerance of network Partition分区
2013-11-15 21:06:06
1894
原创 GFS笔记
一个GFS集群包含一个Master节点(逻辑上的)和多台Chunk服务器。如图: 这些chunk服务器通常是普通的Linux机器。GFS中的每个文件被划分成为多个Chunk,每个Chunk默认为64MB,Chunk服务器存储的是Chunk的副本,副本以文件形式存储。 master管理所有文件系统的元数据,包括:文件名字空间;Chunk与文件名字的映射以及Chun
2013-11-15 18:23:56
1068
原创 MapReduce笔记
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。 初始化时,数据会被划分成很多小块,以的形式呈现。用户程序会分配一个master进程和很多个worker进程。 任务开始时,master会将任务分为两种(map和reduce),并分别为他们分配worker进程。 master的任务是:给map和reduce的worker分别分配任务;检
2013-11-15 18:06:43
771
原创 Java多态与动态绑定
public class Polymorphism { public static void main(String[] args) { // TODO Auto-generated method stub Father son = new Son(); System.out.println(son.name); son.singSong(); System.out.prin
2013-09-30 09:27:07
765
原创 数据挖掘算法学习之Apriori算法
频繁模式: 频繁出现在数据集中的模式 譬如,一个商场一天出售的商品(大米,油,等)是一个数据集。频繁模式是一个子序列,如牙膏和牙刷总是在一起出现,则课看做一个频繁模式。关联规则: 频繁模式可以使用关联规则表示,如: 牙刷=>牙膏 表示一个人买了牙刷后很可能买牙膏。频繁项集:
2013-09-28 20:19:04
1941
原创 数据挖掘学习笔记(三)数据预处理
数据预处理一,数据质量 数据质量涉及:准确性;完整性;一致性;时效性;可信性;可解释性。二,数据预处理的任务 (1)数据清理1,缺失值 方法:忽略元组;人工填写缺失值;使用一个全局常量填充缺失值;使用属性的中心度量填充缺失值;使用与给定元组同一类的所有样本的属性均值或中位数;使用最可能的值填充。2,噪声数据 噪声是被测量的变量的随机误差或方差、 方法:
2013-09-08 18:23:12
1528
原创 数据挖掘学习笔记(一)引论
1,什么是数据挖掘 数据挖掘是从大量的数据中挖掘有趣的模式和知识的过程。2,什么是KDD KDD是数据中的知识发现,包含以下过程: 数据清理;数据集成;数据选择;数据变换;数据挖掘;模式评估;知识表现。3,数据挖掘中的数据 (1)数据库数据 主要是关系数据库中的数据,关系数据库是表的集合,每个表都包含
2013-09-06 19:50:26
861
原创 java中浮点数的运算
看下列程序:public class Fudian{ public static void main(Strings[] args) { System.ou.println(2.0 - 1.1); }}输出结果会是什么呢?0.8999999999999999这是因为java无法正确表示1.1所以,在java中要对浮点数进行运算,可
2013-08-14 16:44:18
742
转载 override和overload的区别
override(重写)1、方法名、参数、返回值相同。2、子类方法不能缩小父类方法的访问权限。3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。4、存在于父类和子类之间。5、方法被定义为final不能被重写。overload(重载)1、参数类型、个数、顺序至少有一个不相同。 2、不能重载只有返回值不同的方法名。3、存在于父类和子类、同类中。
2013-08-07 21:10:36
579
原创 使用Gson解析json
Gson是google推出的一个用于在java平台解析json的包地址:https://code.google.com/p/google-gson/一,将java对象转换成json首先定义一个简单的类class ClassDemo { static Set DemoSet; String name; long lastModify; String hashcode;
2013-08-03 21:44:23
1076
转载 java synchronized详解
Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问object的一个synchron
2013-07-19 11:35:18
548
转载 Java命名规范
定义规范的目的是为了使项目的代码样式统一,使程序有良好的可读性。包的命名 (全部小写,由域名定义)Java包的名字都是由小写单词组成。但是由于Java面向对象编程的特性,每一名Java程序员都 可以编写属于自己的Java包,为了保障每个Java包命名的唯一性,在最新的Java编程规范中,要求程序员在自己定义的包的名称之前加上唯一的前缀。 由于互联网上的域名称是不会重复的,所以程序
2013-07-04 11:13:59
432
转载 jdk与jre的区别
JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。如果安装了JDK,会发同你的电脑有两
2013-06-09 20:18:19
434
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人