- php、go、python后端接口签名实现
奇华智能
后台开发linux签名接口安全
1.php实现/**生成签名,$args为请求参数,$key为私钥*/functionmakeSignature($args,$key){if(isset($args['sign'])){$oldSign=$args['sign'];unset($args['sign']);}else{$oldSign='';}ksort($args);$requestString='';foreach($arg
- Promise入门
m0dw
javascript前端开发语言
文章目录为什么使用PromisePromise介绍为什么使用Promise在ES5中使用回调函数来处理异步任务,当多个异步任务有依赖关系时(如下定时器的层层嵌套),就需要回调函数互相嵌套,当嵌套结构多了后,就出现了回调地狱的问题,难以维护setTimeout(function(){console.log('a1');setTimeout(function(){console.log('a2');s
- 红队测试-代理和中间人攻击工具
小浪崇礼
BetterCAP-Modular,portableandeasilyextensibleMITMframework.Ettercap-Comprehensive,maturesuiteformachine-in-the-middleattacks.Habu-Pythonutilityimplementingavarietyofnetworkattacks,suchasARPpoisoning,D
- 学习游戏制作记录(敌人的状态机,敌人和玩家的共同继承以及实现敌人的移动和待机)7.20
★YUI★
学习游戏unityc#
1.敌人的状态机敌人的状态与玩家类似,同样需要敌人,敌人状态和管理状态的状态机,让我们创建三个脚本:Enemy,EnemyState,EnemyStateMachine。EnemyState脚本:publicclassEnemyState//不需要继承,因为它将作为父类{protectedEnemyStateMachineenemyStateMachine;//状态机protectedEnemye
- 【Python】Gym 库:于开发和比较强化学习(Reinforcement Learning, RL)算法
彬彬侠
Python基础pythonGym强化学习RLGymnasium
Gym是Python中一个广泛使用的开源库,用于开发和比较强化学习(ReinforcementLearning,RL)算法。它最初由OpenAI开发,提供标准化的环境接口,允许开发者在各种任务(如游戏、机器人控制、模拟物理系统)中测试RL算法。Gym的设计简单且灵活,适合学术研究和工业应用。2022年,Gym被整合到Gymnasium(由FaramaFoundation维护)中,成为主流的强化学习
- uniapp打开导航软件并定位到目标位置的实现
界面架构师
uniappuni-app导航前端vue
/***打开导航*@paramlocation经纬度(例如:"117.214713,39.116884")*@paramaddress地址*/exportfunctionmapNavigation(location,address){constlocationArr=location.split(',')constlongitude=locationArr[0]constlatitude=loca
- uniapp通过蓝牙在设备中拿数据
阿凤21
uni-app前端
1、初始化蓝牙模块:uni.openBluetoothAdapter({success(res1){console.log("蓝牙初始化成功",res1)}})2、初始化蓝牙后,获取本机蓝牙是否开启uni.getBluetoothAdapterState({success:function(row){console.log('蓝牙状态:',row.available);if(row.availab
- 如何构建FunASR的本地语音识别服务
FunASR简介FunASR是阿里巴巴达摩院开源的高性能语音识别工具包,支持离线识别和实时流式识别两种模式。其核心特点包括:支持多种语音任务:ASR(自动语音识别)、VAD(语音活动检测)、标点恢复、关键词检测等。提供预训练模型:覆盖中文、英文等多语言,支持不同场景(通用、会议、直播等)。支持多种部署方式:本地Python、Docker容器、ONNX推理优化等。开源地址:GitHub-FunASR
- 语音识别开源项目推荐:GitHub热门仓库盘点
AGI大模型与大数据研究院
AI大模型应用开发实战语音识别开源githubai
2024年必看!GitHub热门语音识别开源项目全解析:从入门到实战关键词语音识别(ASR)、开源项目、GitHub、Whisper、FunASR、PaddleSpeech、深度学习摘要想象一下:开车时只需说一句话就能自动发消息,听英文演讲时实时获得中文翻译,给视障人士读文本时精准转换——这些场景的背后,语音识别(AutomaticSpeechRecognition,ASR)技术正在改变我们与机器
- [go] binary.Write 小坑一个兼论go的错误处理哲学
勤奋happyfire
有如下go代码:const(foo=123)buffer:=new(bytes.Buffer)binary.Write(buffer,binary.BigEndian,foo)fmt.Println(buffer.Len())输出结果是0,foo没有写入到buffer中。原因在于,binary包的Write内部调用了intDataSize函数获取foo的长度:funcintDataSize(dat
- java web登录代码_Java Web 登录页面的实现代码实例
KJ(Kan Jia)
javaweb登录代码
代码如下~内有详细解释,最后有照片!functioninuser(){username_mess.style.visibility="visible";}functionoutuser(){//获取name为usesrname的文本u=f1.username.value;f1.username.style.border="1pxsolidaaaaaa";if(u==""){username_mes
- ARM指令集--简介
小蘑菇二号
arm指令集
目录1ARM指令集特点2ARM指令集分类3指令格式ARM指令集是专为ARM架构处理器设计的一系列机器指令集合。ARM(AdvancedRISCMachines)以其精简指令集计算机(RISC)设计理念为基础,提供了高效、低功耗的指令系统。ARM指令集历经多个版本迭代,目前最新的主流版本包括ARMv8-A(支持AArch64和AArch32两种执行状态)。1ARM指令集特点-**精简指令集**:指令
- 李航老师-统计学习
小三爷_df1b
三个准则1.作为入门选手,不要每章都看2.不要从零造轮子去实现算法,太浪费时间3.必须能手推公式章节目录##统计学习概论-统计学习的目的是对数据进行==预测与分析==-统计学习的前提是同类数据具有一定的统计规律性-统计学习的方法-监督学习(supervisedlearning)-非监督学习(unsupervisedlearning)-半监督学习(semi-supervisedlearning)-强
- Leetcode 658. 找到k个最接近的元素
皮卡猴
leetcode刷题leetcode算法排序算法
Leetcode658.找到k个最接近的元素1.问题描述2.思路 按照递增序列,找到x应该插入的位置index。以此为中心,向两侧扩展长度为k的空间,该空间内的元素就是我们想要的元素。1二分查找,找到满足=0,且jlen(arr)-1,向左移动i3.代码3.1第一次运行成功funcfindClosestElements(arr[]int,kint,xint)[]int{varres[]intin
- CICS Application Programming Fundamentals 第8-7章
沉迷学习w
主机开发学习笔记zoscics
8.TheSign-onProcess-7.RegisteredUsersFile***************************************TopofData**********************************00000105Registered-User-Idpicx(08).00000205Registered-Passwordpicx(08).000003
- CICS Application Programming Fundamentals 第8-9章
9.VerifyingUserCredentials//JC$CRTQSJOB,'CREATEQSAM',CLASS=C,MSGCLASS=S,MSGLEVEL=(1,1),JOB00039//REGION=4096K,TIME=1440,COND=((4,LT)),NOTIFY=&SYSUID//*//*!!!PLSDOUBLECHECKANDREMARKTHISLINETOSUBMIT//*/
- python双引号打不出来_在python 3中使用单引号和双引号时出错 - python
weixin_39897749
python双引号打不出来
使用os.system()函数时,我在python中遇到了EOL错误。以下是代码行生成错误:os.system("catsubdomains.txt|cut-d'"'-f1")基本上,我试图使用分号[“]修改输出字符串(双引号)参考方案如果需要在带"的字符串中编写",则可以将其写为\""catsubdomains.txt|cut-d'\"'-f1"在PythonCloudFunction中使用错误
- c++,从汇编角度看lambda
Kira Skyler
CPPc++汇编
本篇作为c++,从汇编底层角度深入理解带捕获的lambda如何转化为std::function的开胃小菜#include#includeintmain(intargs,char*argv[]){[](){std::coutint{std::coutint{std::coutint{std::cout:intmain(intargs,char*argv[]){#申请了0x20大小的栈空间401236
- 【C++11】lambda表达式 | 函数包装器
_宁清
C++c++lambda函数包装器bindfunctionlambda表达式
文章目录一、lambda表达式1.为什么需要lambda表达式2.lambda的定义3.lambda的语法捕捉列表4.函数对象和lambda表达式的底层原理二、函数包装器1.function包装器2.bind包装器用bind包装器绑定固定参数用bind包装器调整传参顺序无意义的绑定3.bind包装器的意义一、lambda表达式1.为什么需要lambda表达式在C++98中,如果想要对一个数据集合中
- js扁平数组树形,根据指定节点id查询改节点下的所有子节点
废话不多说,直接上代码functionfindAllChildren(list,parentId){constresult=[];//查找直接子节点constdirectChildren=list.filter((item)=>item.parentId===parentId);//递归查找子节点的子节点directChildren.forEach((child)=>{result.push(ch
- Pytorch图像二分类代码 AlexNet
望舒向晚
Pytorchpytorch深度学习机器学习
importtorchimporttorch.nnasnnimporttorch.optimasoptimimporttorch.utils.dataimporttorch.nn.functionalasFimporttorchvisionfromtorchvisionimporttransformsfromPILimportImagedefcheck_image(path):try:im=Ima
- AUTOSAR OS Introduction -- Part 1(Task&ISR)
寻找幸存者
ClassicAUTOSARautosar
GeneralAUTOSAROS由OSEKOS衍生出来,同时也满足ISO-17356-3对于实施操作系统的要求,本文以ETASOS为例进行介绍Task我们写的所有Function都需要被OS调度才可以运行,那么负责调度这些Function就是OSTaskTaskTypeOsTask依据是否关联OSEvent.可以分为BasicTask(不包含OSEvent)和ExtendedTask(包含OSEv
- 记一次解题经历-中断和锁的应用实例
折木H.O.
linux
中断和锁的应用实例之自己挖的坑自己填:)题目:请指出如下代码缺陷在哪?前提条件:foo1有可能在进程上下文或中断上下文执行,且假设执行该函数之前没有关闭中断。funcfoo1(void){raw_spin_lock(&lock);/*被保护临界区*/raw_spin_unlock(&lock);}foo2是timercallback,如下:funcfoo2(void){raw_spin_lock(
- 支持向量机SVM
李昊哲小课
sklearn人工智能机器学习支持向量机算法机器学习sklearn人工智能数据挖掘
支持向量机SVM一、支持向量机算法支持向量机(SupportVectorMachine,SVM)是一种用于分类和回归分析的机器学习算法。分类场景举例(更容易理解)假设现在有一个二维平面上散落着一些点,这些点分为两类,一类是红色的圆形点,另一类是蓝色的方形点。我们的任务就是找到一条直线,能够把这两类点尽可能准确地分开。支持向量机算法做的事情就和这个类似。算法核心思想它不是随便找一条能分开两类数据的直
- 每日面试题11:JVM
深入理解JVM:Java的“心脏”如何驱动程序运行?为什么需要JVM?你是否想过,为什么用Java写的程序,能在Windows、Linux、macOS上“无缝运行”?为什么开发者无需为不同操作系统重写代码?这背后的核心功臣,正是Java虚拟机(JavaVirtualMachine,JVM)。JVM是Java生态的“基石”,它不仅实现了“一次编写,随处运行”的跨平台特性,还通过内存管理、垃圾回收等机
- util-linux debug
帆子_8c3a
//copyfrominclude/debug.h//*It'spossibletoinitializethemaskbycommadelimitedstringswith//*subsystemnames(e.g."LIBMOUNT_DEBUG=options,tab").Inthiscaseis//*necessarytodefinemasknamesarray.Thisfunctionali
- 机器学习初学者理论初解
Mikhail_G
机器学习人工智能
大家好!为什么手机相册能自动识别人脸?为什么购物网站总能推荐你喜欢的商品?这些“智能”背后,都藏着一位隐形高手——机器学习(MachineLearning)。一、什么是机器学习?简单说,机器学习是教计算机从数据中自己找规律的技术。就像教孩子认猫:不是直接告诉他“猫有尖耳朵和胡须”,而是给他看100张猫狗照片,让他自己总结出猫的特征。传统程序vs机器学习传统程序:输入规则+数据→输出结果(例:按“温
- tp6开启了APP_DEBUG = true 访问不存在的控制器提示 404 Not Found!
IT 老王
phpthinkphp6
tp6开启了APP_DEBUG=true访问不存在的控制器提示404NotFound!报错信息不提示了???查了半天最后找到原因了,原来是路由拦截了Route::miss(function(){return'404NotFound!';});把Route::miss去掉,就正常了!
- 大模型 Function Calling 中的两种参数传入方式对比——为什么建议tools方式传参而不建议system message传参
John_今天务必休息一天
大模型智能体大模型functioncall人工智能
大模型FunctionCalling中的两种参数传入方式对比——为什么建议tools方式传参而不建议systemmessage传参一、设计定位与功能匹配度不同二、结构化vs非结构化:影响工具调用的准确性三、分离关注点:降低维护成本与逻辑混淆四、模型优化适配:专用参数的可靠性更高总结在大模型(如千问)的工具调用场景中,建议通过tools参数传入调用函数信息,而非通过SystemMessage传入,核
- 迁移学习:知识复用的智能迁移引擎 | 从理论到实践的跨域赋能范式
大千AI助手
人工智能Python#OTHER迁移学习人工智能机器学习算法神经网络大模型迁移
让AI像人类一样“举一反三”的通用学习框架本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!一、核心定义与基本概念迁移学习(TransferLearning)是一种机器学习范式,其核心思想是:将源领域(SourceDomain)学到的知识迁移到目标领域(TargetDomain),以提升目标任务的性能
- 关于旗正规则引擎规则中的上传和下载问题
何必如此
文件下载压缩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/