- SSM 环境下的 AOP 配置与简单应用
程序东
SpringAOP
一、需要导入的jar包org.aspectjaspectjrt1.8.13org.aspectjaspectjweaver1.8.13org.springframeworkspring-aop4.3.18.RELEASE二、无注解方式的简单应用1.新建测试的service层packagecom.yyzheng.service;publicinterfaceSayService{publicvoid
- 实现excel文件导入导出
我是刘桐
excel
一.首先引入读写excle的依赖我们这里使用poi技术进行导入导出,poi也有两个不同的jar包,分别是处理excel2003(xls)和excel2007(xlsx)+的,对应的是poi和poi-ooxml。org.apache.poipoi5.0.0org.apache.poipoi-ooxml5.0.0二.核心方法介绍//工作蒲操作接口类Workbookworkbook=null;//根据x
- Devops系列之对接Gerrit的设计与实现(三)-- Java编程实现
天草二十六_简村人
devopsjava运维后端开发语言微服务
一、背景上文讲述了如何使用shell命令实现创建gerrit项目,本文介绍如何使用java语言编程实现。二、java语言实现1、引入jar包com.urswolfer.gerrit.client.restgerrit-rest-java-client0.9.3核心类GroupApiRestClient.java2、配置project:gerrit:host:http://192.168.5.60:
- Spring Boot
一笑知语
javaspringbootspring
SpringBoot瞻山识璞,临川知珠官方文档1.概述定义SpringBoot是一个基于Spring4.0的javaweb快速开发框架,策略:开箱即用和约定优于配置,作者:Pivotal团队与SSM区别序号SSMSpringBoot1Tomcat:war包内嵌Tomcat:jar包微服务微服务是一种高内聚,低耦合架构风格,JamesLewis,MartinFowler微服务论文微服务论文中文翻译d
- java+gdal实现影像重投影
飞火鹰
JavaWebGISgdal影像重投影javaeclipsegdal
java+gdal实现影像重投影GDAL功能很强大,用来处理影像数据,今天我要做的是java代码写的影像重投影,网上参考资料大都是c++和python写的,也看了一些大牛写的代码,最后写出了java版的,eclipse写的,直接引用一个gdal.jar包,不过要有一些dll文件,网上有相关的java配置jdal库的博客,不配置jdal会报错:本地库错误。还有对于gdal读取六参数geoTransf
- springboot多模块工程打包部署运行
雾林小妖
Java项目应用2多模块工程打包springboot多模块工程
1、问题概述?基于实际项目打包过程,各种配置面面俱到,已配置的可跳过。本文以打包jar包为模板进行操作,部署方便。在实际的开发中,项目的模块可能较多,如果都放在一个项目的目录中,势必会造成项目包中的文件冗余,难以管理,这个时候就需要使用多模块管理项目。但是多模块项目的打包的时候比较麻烦,下面就详细的教大家如何实现?
- springboot整合mqtt客户端订阅信息
an_999
springboot整合mqtt客户端订阅接收信息应用场景:从通讯管理集中订阅终端设备数据信息1、引入jar包org.springframework.integrationspring-integration-streamorg.springframework.integrationspring-integration-mqtt2、properties中配置mqtt的基本连接信息#mqtt配置-s
- SpringBoot项目docker部署过程说明--互联网
test-main-thread
springbootdocker后端
SpringBoot项目docker部署过程说明——互联网环境环境准备mysql使用官方镜像reids前端部署nginx不包含前端代码验证启动nginx配置后端地址转发docker网络自定义docker网络查看docker容器的ip地址防火墙端口防火墙端口开放防火墙端口开放访问不通问题排查后端jar包部署后端程序打包成镜像运行后端镜像docker-compose应用安装docker-compose
- 解决BASE64Encoder报错的问题
禾日木目心
intellij-ideatomcat
问题:Cannotresolvesymbol‘BASE64Encoder’原因:在JDK9后,官方就已经不支持importsun.misc.BASE64Encoder了。解决方法:第一种:把JDK的版本降低到1.8以内。(不建议)第二种:采用了官方提供了新的jar包importjava.util.Base64。下面这个java类的本意是为了,给文件名在不同的浏览器中,修改对应的编码格式,使其能正确
- 自制审批流框架记录
一、使用步骤下载:https://gitee.com/gs_work/process-spring-boot-starter.git通过Maven打包安装到本地Maven仓库:#jar包方式安装(安装安装记得用resource下的pom文件覆盖本地仓库的)mvninstall:install-file-Dfile=jar包路径-DgroupId=com.shallowUniverse-Dartif
- zxing生成二维码并在下方展示文字并需要的jar包
3wtczs93点抗母
后台框架
网上的抄抄改改能用,具体样式大小自己设置吧packagetest;importjava.awt.Color;importjava.awt.Font;importjava.awt.Graphics2D;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.FileOutputStream;importjava.io.I
- 怎么用idea建立java并打成jar包运行,简易版
Storm Mun
linuxjarjavapostgresqllinux
前言:接到一个需求要向postgresql数据库中导入手机号数据,手机号给的文件时明文,要改成密文再加到自己的数据库中。数据量几万,如果用insert太耗资源,可以使用copy命令,命令使用方法一、准备idea新建一个java项目https://jingyan.baidu.com/article/48b558e3f8f6637f39c09a44.html打jar包https://zhinan.so
- 解决maven版本冲突——maven-shade
士弘毅
大数据Javamavenmavenjavaspring
目录背景maven-shade-plugin介绍解决问题1.环境准备2.解决方案3.引入依赖一些需要注意的坑背景在maven项目中引入新的第三方组件时,组件中的依赖可能会与项目已有组件依赖的jar包(其他组件)发生冲突。比如新添加的milvus-sdk-java是2.0.3,依赖的protobuf-java版本得是3.12.0;而项目中已有的hbase版本是1.2.0.x,依赖的protobuf-
- jmeter--MD5加密
久醉绕心弦,
jmeterjmeterjava开发语言
添加BeanShell预处理程序,编写如下脚本:importorg.apache.commons.codec.digest.DigestUtils;//导入加密类,jmeter自带,不需要导入额外的jar包StringID="123";Stringsecret="abc";Stringsign=DigestUtils.md5Hex(ID+secret+"${__time(,)}");//对字符串进
- springMVC-04-Controller配置总结和restful风格
哇哦y
springMVC学习restfulspringjava
Controller配置总结和restful风格一、用controller接口实现SpringMVC1、新建一个项目,导入web支持2、导入相关jar包3、编写web.xml,注册DispatcherServlet4、编写SpringMVC配置文件5、编写controller类//只要实现了Controller接口的类,说明这就是一个控制器publicclassControllerTest1imp
- java人脸识别
java_学习爱好者
SpringBoot整合javaspringboot开发语言人工智能人脸识别
文章目录前言为什么选择虹软呢?注册虹软账号,下载SDK将jar包安装到maven本地仓库项目实战导入jar包编写配置文件Service编写测试类人脸识别更多应用前言虹软人脸识别技术是由虹软公司开发的一系列人脸识别技术,包括人脸检测、活体检测、人脸识别等。这些技术基于深度学习算法,能够在复杂环境下快速准确地识别人脸,广泛应用于智能手机、DSC、平板、IPCamera、机器人、智能家居、智能终端等
- Maven项目报错:The type javax.validation.Payload cannot be resolved. It is indirectly referenced from req
码农致富
WEB开发
一、问题描述Maven项目报错:Thetypejavax.validation.Payloadcannotberesolved.Itisindirectlyreferencedfromrequired.classfiles二、解决方法由于项目里缺少javax.validation的jar包引起的,在POM文件中加入以下依赖就行了:javax.validationvalidation-api1.1.
- IT学习用的工具软件
直视太阳
工具供学习使用的软件集合
IT学习用的工具软件mysql图形化工具JDK1.8API帮助文档JDK1.8安装包PHP帮助文档PHP集成运行环境Python3.7安装包ASPCMS本地运行工具UltraISO制作启动盘Editplus编辑器mysql图形化工具链接:https://pan.baidu.com/s/1tL8ruXjiNGfW0vlWIkA7_A密码:axuvmysqljdbcjar包链接:https://pan
- Maven项目添加第三方jar包
StormEnum
POIjavamaven
这里就以aspose-words举例1.将准备好的第三方jar包添加在resource文件下2.pom.xml文件中com.asposeaspose-words16.4.0system${project.basedir}/src/main/resources/jar/aspose-words-jdk16-16.4.0.jar3.完事了
- 如何在Maven项目中引用本地JAR包
一休哥助手
javamavenjar
目录引言为什么需要引用本地JAR包基本概念与准备工作Maven项目结构JAR包简介本地仓库简介将本地JAR包安装到Mave
- JDBC基本使用
unhurried人生——冕临
Javajava
JDBC简介JDBC,全程为JavaDatabaseConnectivity,即Java数据库连接。允许Java程序与关系型数据库进行交互。通过JDBC,程序可以连接到数据库并执行SQL语句,实现对数据库的增、删、查、改等操作。JDBC定义了统一的接口规范,而各个数据库厂商根据该规范提供具体的接口实现。这些实现类通常封装在JAR文件中,也就是常说的数据库驱动JAR包。JDBC工作流程JDBC的工作
- docker-compose方式部署docker项目
@郭小茶
dockerdocker容器运维
本文使用docker-compose方式部署mysql、redis、minio、后端项目、前端项目。整体目录:说明:data:存放启动命令html:存放前端html、js代码jar:存放jar包minio:存放minio配置mysql:存放mysql配置nginx:存放nginx配置redis:存放redis配置daemon.json:存放国内镜像源如果是在windows上部署docker服务,则
- Mybatis中example类的使用
zhu1289303556
java
要使用example类,先要在项目中导入mybatis.mapper的jar包。Mapper接口中包含了单表的增删改查以及分页功能。给出实例:CountryMappermapper=sqlSession.getMapper(Country.class);//Country.class是实体类//查询操作ListcList=mapper.select(newCountry());现在使用Exampl
- For artifact {org.projectlombok:lombok:null:jar}: The version cannot be empty.错误解决办法
没有码甲
web网站开发Javajarjavaspringbootvue.js
升级IDEA后Lombok不能使用,在maven点package生成jar包时,出现错误:Forartifact{org.projectlombok:lombok:null:jar}:Theversioncannotbeempty.最新版的idea在构建springboot项目之后,在引入官方依赖中的lombok后,lombok无法使用。这是一个IDEA中的bug。解决办法:在pom.xml文件中
- Virtualenv:Python项目管理的救星
科技Ins
pythonvirtualenv
在Python的世界里,依赖包冲突是开发者的噩梦,但也是成长的催化剂。最近在写Python项目中就碰到了这样的问题,明明代码在自己的电脑上表现都是正常的,在另外一台电脑上却始终有些小问题,两台电脑安装的Python版本都是一致的。思来想去,怀疑和两台电脑上安装的依赖包不同,有依赖包冲突导致的,这一点其实和Java项目里的jar包冲突很像,只是Java代码的报错比较容易排查出相关问题,而Python
- 在java中使用openCV实现对图片的分割(仅限java)
伊利十二个圈
opencvopencvjava分割图片
针对java开发,希望可以对大家有帮助1.首先:下载opencv点击下载,下载完成后341版本和320版本,是需要jdk1.8支持的。310版本只需要jdk1.7就可以。大家如果不愿意花积分的话也可以去官网进行下载https://opencv.org/releases.html2.下载完成后需要要导入opencv的jar包,把dll和jar放在一
- java jar启动和tomcat,Tomcat服务器上部署JAR或执行java -jar之间的区别?
老魏一凡
javajar启动和tomcat
Tomcat服务器上部署JAR或执行java-jar之间的区别?疑问???理解!!!疑问???运行javaweb有两种方式:当使用springboot打包出jar包时,这个jar包可以直接运行java-jar*.jar运行,另一种是把*.jar移动到tomcat/webapps中,二者的区别是什么?理解!!!①对于springboot打包出来的jar包中已经包含了嵌入式tomcat服务器的依赖项,
- 在Spring上集成使用ehcache缓存框架以及实现集群缓存同步
threedr3am
Java开发spring缓存框架集群
周一第一天实习,老大给了个任务给我,让我看看j2cache两级缓存框架,然后我在开源中国了解到,开源中国目前就用到这个缓存框架,主要是为了减少redis的负荷,这个两级缓存框架使用了ehcache作为一级L1缓存,使用redis作为二级L2缓存,了解到这个之后,我果断学习了一波ehcache在spring的使用。一、依赖jar包这里使用maven:4.3.5.RELEASE2.8.0net.sf.
- Hbase的学习笔记(3)
白居不易.
hbase学习java
Hbase的学习笔记(3)本次主要学习Hbase与Java的配合使用,即通过Java语言完成对Hbase表的增删改查。1.所需依赖jar包org.apache.hadoophadoop-clientorg.apache.hadoophadoop-common注意:有些时候程序报错,跟maven的jar包加载顺序有关,具体的可以去了解下相关知识。我在测试时,虽然有的类导包进来是importorg.a
- 宝塔面板部署项目(SpringBoot+Vue)
爱吃java的羊儿
软件使用1024程序员节
安装步骤1.准备云服务器2.准备域名(普通域名,并连上服务器)3.安装宝塔面板宝塔面板下载,免费全能的服务器运维软件4.服务器开放端口开放端口号一致5.进入宝塔面板6.打包并上传项目(上传到面板文件)6.1打包springboot项目点击m(maven)-双击package,等待片刻,即可完成打包,最终打包成jar文件。上传jar包,配置文件和存储文件的文件夹6.2打包vue项目修改后端端口(改成
- 关于旗正规则引擎规则中的上传和下载问题
何必如此
文件下载压缩jsp文件上传
文件的上传下载都是数据流的输入输出,大致流程都是一样的。
一、文件打包下载
1.文件写入压缩包
string mainPath="D:\upload\"; 下载路径
string tmpfileName=jar.zip; &n
- 【Spark九十九】Spark Streaming的batch interval时间内的数据流转源码分析
bit1129
Stream
以如下代码为例(SocketInputDStream):
Spark Streaming从Socket读取数据的代码是在SocketReceiver的receive方法中,撇开异常情况不谈(Receiver有重连机制,restart方法,默认情况下在Receiver挂了之后,间隔两秒钟重新建立Socket连接),读取到的数据通过调用store(textRead)方法进行存储。数据
- spark master web ui 端口8080被占用解决方法
daizj
8080端口占用sparkmaster web ui
spark master web ui 默认端口为8080,当系统有其它程序也在使用该接口时,启动master时也不会报错,spark自己会改用其它端口,自动端口号加1,但为了可以控制到指定的端口,我们可以自行设置,修改方法:
1、cd SPARK_HOME/sbin
2、vi start-master.sh
3、定位到下面部分
- oracle_执行计划_谓词信息和数据获取
周凡杨
oracle执行计划
oracle_执行计划_谓词信息和数据获取(上)
一:简要说明
在查看执行计划的信息中,经常会看到两个谓词filter和access,它们的区别是什么,理解了这两个词对我们解读Oracle的执行计划信息会有所帮助。
简单说,执行计划如果显示是access,就表示这个谓词条件的值将会影响数据的访问路径(表还是索引),而filter表示谓词条件的值并不会影响数据访问路径,只起到
- spring中datasource配置
g21121
dataSource
datasource配置有很多种,我介绍的一种是采用c3p0的,它的百科地址是:
http://baike.baidu.com/view/920062.htm
<!-- spring加载资源文件 -->
<bean name="propertiesConfig"
class="org.springframework.b
- web报表工具FineReport使用中遇到的常见报错及解决办法(三)
老A不折腾
finereportFAQ报表软件
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、repeated column width is largerthan paper width:
这个看这段话应该是很好理解的。比如做的模板页面宽度只能放
- mysql 用户管理
墙头上一根草
linuxmysqluser
1.新建用户 //登录MYSQL@>mysql -u root -p@>密码//创建用户mysql> insert into mysql.user(Host,User,Password) values(‘localhost’,'jeecn’,password(‘jeecn’));//刷新系统权限表mysql>flush privileges;这样就创建了一个名为:
- 关于使用Spring导致c3p0数据库死锁问题
aijuans
springSpring 入门Spring 实例Spring3Spring 教程
这个问题我实在是为整个 springsource 的员工蒙羞
如果大家使用 spring 控制事务,使用 Open Session In View 模式,
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.
- 百度词库联想
annan211
百度
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RunJS</title&g
- int数据与byte之间的相互转换实现代码
百合不是茶
位移int转bytebyte转int基本数据类型的实现
在BMP文件和文件压缩时需要用到的int与byte转换,现将理解的贴出来;
主要是要理解;位移等概念 http://baihe747.iteye.com/blog/2078029
int转byte;
byte转int;
/**
* 字节转成int,int转成字节
* @author Administrator
*
- 简单模拟实现数据库连接池
bijian1013
javathreadjava多线程简单模拟实现数据库连接池
简单模拟实现数据库连接池
实例1:
package com.bijian.thread;
public class DB {
//private static final int MAX_COUNT = 10;
private static final DB instance = new DB();
private int count = 0;
private i
- 一种基于Weblogic容器的鉴权设计
bijian1013
javaweblogic
服务器对请求的鉴权可以在请求头中加Authorization之类的key,将用户名、密码保存到此key对应的value中,当然对于用户名、密码这种高机密的信息,应该对其进行加砂加密等,最简单的方法如下:
String vuser_id = "weblogic";
String vuse
- 【RPC框架Hessian二】Hessian 对象序列化和反序列化
bit1129
hessian
任何一个对象从一个JVM传输到另一个JVM,都要经过序列化为二进制数据(或者字符串等其他格式,比如JSON),然后在反序列化为Java对象,这最后都是通过二进制的数据在不同的JVM之间传输(一般是通过Socket和二进制的数据传输),本文定义一个比较符合工作中。
1. 定义三个POJO
Person类
package com.tom.hes
- 【Hadoop十四】Hadoop提供的脚本的功能
bit1129
hadoop
1. hadoop-daemon.sh
1.1 启动HDFS
./hadoop-daemon.sh start namenode
./hadoop-daemon.sh start datanode
通过这种逐步启动的方式,比start-all.sh方式少了一个SecondaryNameNode进程,这不影响Hadoop的使用,其实在 Hadoop2.0中,SecondaryNa
- 中国互联网走在“灰度”上
ronin47
管理 灰度
中国互联网走在“灰度”上(转)
文/孕峰
第一次听说灰度这个词,是任正非说新型管理者所需要的素质。第二次听说是来自马化腾。似乎其他人包括马云也用不同的语言说过类似的意思。
灰度这个词所包含的意义和视野是广远的。要理解这个词,可能同样要用“灰度”的心态。灰度的反面,是规规矩矩,清清楚楚,泾渭分明,严谨条理,是决不妥协,不转弯,认死理。黑白分明不是灰度,像彩虹那样
- java-51-输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。
bylijinnan
java
public class PrintMatrixClockwisely {
/**
* Q51.输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。
例如:如果输入如下矩阵:
1 2 3 4
5 6 7 8
9
- mongoDB 用户管理
开窍的石头
mongoDB用户管理
1:添加用户
第一次设置用户需要进入admin数据库下设置超级用户(use admin)
db.addUsr({user:'useName',pwd:'111111',roles:[readWrite,dbAdmin]});
第一个参数用户的名字
第二个参数
- [游戏与生活]玩暗黑破坏神3的一些问题
comsci
生活
暗黑破坏神3是有史以来最让人激动的游戏。。。。但是有几个问题需要我们注意
玩这个游戏的时间,每天不要超过一个小时,且每次玩游戏最好在白天
结束游戏之后,最好在太阳下面来晒一下身上的暗黑气息,让自己恢复人的生气
&nb
- java 二维数组如何存入数据库
cuiyadll
java
using System;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.Xml.Serialization;
using System.IO;
namespace WindowsFormsApplication1
{
- 本地事务和全局事务Local Transaction and Global Transaction(JTA)
darrenzhu
javaspringlocalglobaltransaction
Configuring Spring and JTA without full Java EE
http://spring.io/blog/2011/08/15/configuring-spring-and-jta-without-full-java-ee/
Spring doc -Transaction Management
http://docs.spring.io/spri
- Linux命令之alias - 设置命令的别名,让 Linux 命令更简练
dcj3sjt126com
linuxalias
用途说明
设置命令的别名。在linux系统中如果命令太长又不符合用户的习惯,那么我们可以为它指定一个别名。虽然可以为命令建立“链接”解决长文件名的问 题,但对于带命令行参数的命令,链接就无能为力了。而指定别名则可以解决此类所有问题【1】。常用别名来简化ssh登录【见示例三】,使长命令变短,使常 用的长命令行变短,强制执行命令时询问等。
常用参数
格式:alias
格式:ali
- yii2 restful web服务[格式响应]
dcj3sjt126com
PHPyii2
响应格式
当处理一个 RESTful API 请求时, 一个应用程序通常需要如下步骤 来处理响应格式:
确定可能影响响应格式的各种因素, 例如媒介类型, 语言, 版本, 等等。 这个过程也被称为 content negotiation。
资源对象转换为数组, 如在 Resources 部分中所描述的。 通过 [[yii\rest\Serializer]]
- MongoDB索引调优(2)——[十]
eksliang
mongodbMongoDB索引优化
转载请出自出处:http://eksliang.iteye.com/blog/2178555 一、概述
上一篇文档中也说明了,MongoDB的索引几乎与关系型数据库的索引一模一样,优化关系型数据库的技巧通用适合MongoDB,所有这里只讲MongoDB需要注意的地方 二、索引内嵌文档
可以在嵌套文档的键上建立索引,方式与正常
- 当滑动到顶部和底部时,实现Item的分离效果的ListView
gundumw100
android
拉动ListView,Item之间的间距会变大,释放后恢复原样;
package cn.tangdada.tangbang.widget;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.res.TypedArray;
import andr
- 程序员用HTML5制作的爱心树表白动画
ini
JavaScriptjqueryWebhtml5css
体验效果:http://keleyi.com/keleyi/phtml/html5/31.htmHTML代码如下:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta charset="UTF-8" >
<ti
- 预装windows 8 系统GPT模式的ThinkPad T440改装64位 windows 7旗舰版
kakajw
ThinkPad预装改装windows 7windows 8
该教程具有普遍参考性,特别适用于联想的机器,其他品牌机器的处理过程也大同小异。
该教程是个人多次尝试和总结的结果,实用性强,推荐给需要的人!
缘由
小弟最近入手笔记本ThinkPad T440,但是特别不能习惯笔记本出厂预装的Windows 8系统,而且厂商自作聪明地预装了一堆没用的应用软件,消耗不少的系统资源(本本的内存为4G,系统启动完成时,物理内存占用比
- Nginx学习笔记
mcj8089
nginx
一、安装nginx 1、在nginx官方网站下载一个包,下载地址是:
http://nginx.org/download/nginx-1.4.2.tar.gz
2、WinSCP(ftp上传工
- mongodb 聚合查询每天论坛链接点击次数
qiaolevip
每天进步一点点学习永无止境mongodb纵观千象
/* 18 */
{
"_id" : ObjectId("5596414cbe4d73a327e50274"),
"msgType" : "text",
"sendTime" : ISODate("2015-07-03T08:01:16.000Z"
- java术语(PO/POJO/VO/BO/DAO/DTO)
Luob.
DAOPOJODTOpoVO BO
PO(persistant object) 持久对象
在o/r 映射的时候出现的概念,如果没有o/r映射,就没有这个概念存在了.通常对应数据模型(数据库),本身还有部分业务逻辑的处理.可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对数据库的操作.
VO(value object) 值对象
通
- 算法复杂度
Wuaner
Algorithm
Time Complexity & Big-O:
http://stackoverflow.com/questions/487258/plain-english-explanation-of-big-o
http://bigocheatsheet.com/
http://www.sitepoint.com/time-complexity-algorithms/