自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(378)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 小型GCC 编译器

以前只用编译器编译程序,现在学完编译原理这门课以后,通过编译大作业,我对编译器的工作原理有了比较清晰的认识 编译器的工作原理 编译器 (Compiler) 是一种将由一种语言编写的程序转换为另一种编程语言的可执行程序. 现代软件对于编译器的需求远甚从前, 究其原因很简单: 作为中间层, 编译器是构建更高层抽象的基础设施. 编译器意欲将人类可阅读的高阶代码, 翻译为机器能运行的低阶代码. 现代编

2015-06-28 15:38:43 4724 7

原创 白话算法之【动态规划入门】

动态规划入门什么是动态规划?        动态规划(Dynamic Programming,所以我们简称动态规划为DP)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程(multistep decision process)的优化问题时,提出了著名的最优化原理(princip

2015-05-11 16:39:09 42873 24

原创 01背包问题吐血详解

背包问题我真是学一次忘一次,很多dp问题也是由这个衍生而来,今天终于痛下决心写个博客供自己日后参考问题描述:有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。基本思路 :这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。 用子问题定义状态:即f[i][v]表示前i件物品恰放入一个容量为v的背包可以

2014-10-18 13:29:20 93430 23

转载 基于矩阵分解的推荐算法

在知乎上看到一篇讲的非常浅显易懂的文章,分享给大家 https://www.zhihu.com/question/26743347

2017-10-30 21:10:48 1312 2

原创 推荐系统测评

校招结束休息了快2个多月了,现在开始系统的学习推荐算法,基于项亮的书一:推荐系统中主要有3种评测推荐结果的实验方法:**1:离线实验 2:用户调查 3:在线实验**离线实验的方法: (1):通过日志系统获得用户行为数据 (2):将数据集分成训练集和测试集 (3):在训练集上训练模型,在测试集上进行测试 (4):通过事先定义的离线指标评测算法在测试集上的预测结果用户调查: 顾名思义,但是

2017-08-31 20:34:25 1630 1

原创 brew update 更新太慢

换镜像源$brew update 慢?来试试用 Coding 家的 Homebrew 源吧!( 该源每 5 分钟和上游同步一次,依托 Coding 遍布全国的 Git 服务节点(在 http://Coding.net push & pull 仓库代码的速度也是同样的快),让你的 brew update 更快!)作者:洋葱猴 链接:https://www.zhihu.com/question/313

2017-03-03 10:53:47 27877 5

原创 排序算法总结

排序算法分为两类: 1:基于比较的排序,这一类排序算法的下限是O(nlogn)2: 非基于比较的排序,这一类排序算法可以突破下限时间复杂度可以达到O(n),比如:计数排序,桶排序,和在此基础上的基数排序下面这个表格总结了各种排序算法的复杂度与稳定性:一:冒泡排序void BubbleSort(int a[], int n) { int i, j; for (i = 0;

2016-09-17 22:12:52 772

原创 indeed一道在线笔试题

String Arrangement Time limit時間制限 : 2sec / Stack limitスタック制限 : 256MB / Memory limitメモリ制限 : 256MB Problem   Mr. Takahashi is poor at English. He often mistakes spelling, especially when he spells the

2016-07-06 14:17:45 1484

转载 余弦计算相似度度量

余弦计算相似度度量相似度度量(Similarity),即计算个体间的相似程度,相似度度量的值越小,说明个体间相似度越小,相似度的值越大说明个体差异越大。对于多个不同的文本或者短文本对话消息要来计算他们之间的相似度如何,一个好的做法就是将这些文本中词语,映射到向量空间,形成文本中文字和向量数据的映射关系,通过计算几个或者多个不同的向量的差异的大小,来计算文本的相似度。下面介绍一个详细

2016-06-14 15:29:56 976 1

原创 31. Next Permutation

实现“下一个排列”函数,将排列中的数字重新排列成字典序中的下一个更大的排列。如果这样的重新排列是不可能的,它必须重新排列为可能的最低顺序(即升序排序)。重排必须在原地,不分配额外的内存。以下是一些示例,左侧是输入,右侧是输出:1,2,3 → 1,3,2 3,2,1 → 1,2,3 1,1,5 → 1,5,1网上看来一个示例,觉得挺好的,也没必要另外找一个了。6 5 4 8 7 5 1 一开始没

2016-04-27 17:22:04 609

原创 22. Generate Parentheses

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.For example, given n = 3, a solution set is:“((()))”, “(()())”, “(())()”, “()(())”, “()()()”求出所以可能

2016-04-27 12:14:23 522

原创 21. Merge Two Sorted Lists

Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists./** * Definition for singly-linked list. * struct ListNo

2016-04-27 12:05:43 547

原创 18. 4Sum

Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.Note: Elements in a quad

2016-04-27 11:46:20 788

原创 16. 3Sum Closest

Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have exactly

2016-04-27 11:42:32 524

原创 15. 3Sum

Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: Elements in a triplet (a,b,c) must be i

2016-04-27 11:22:33 479

原创 11. Container With Most Water

题目:Given n non-negative integers a1, a2, …, an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two

2016-04-26 22:52:36 488

原创 338. Counting Bits

Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1’s in their binary representation and return them as an array.Example: For num = 5 you sh

2016-04-26 22:19:39 568

原创 343. Integer Break

Given a positive integer n, break it into the sum of at least two positive integers and maximize the product of those integers. Return the maximum product you can get.For example, given n = 2, return 1

2016-04-26 22:17:07 522 1

转载 数据库范式概念解析(第一范式,第二范式,第三范式)

大部分数据库从业人员都知道关系数据库有三个基本的范式,即:第一范式,第二范式,第三范式。当然也有牛人知道BC范式,第四范式,第五范式,第六范式,甚至还有个DK范式。本人对数据库的范式概念也是一知半解的,想想有些可笑,搞数据库的竟然不了解关系数据库的基础——范式。这不最近查阅了不少资料,今天把这些东东总结一下。 范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老

2016-03-20 19:06:27 865 2

转载 一致性哈希算法

问题描述: 例如手机朋友网有n个服务器,为了方便用户的访问会在服务器上缓存数据,因此用户每次访问的时候最好能保持同一台服务器。已有的做法是根据ServerIPIndex[QQNUM%n]得到请求的服务器,这种方法很方便将用户分到不同的服务器上去。但是如果一台服务器死掉了,那么n就变为了n-1,那么ServerIPIndex[QQNUM%n]与ServerIPIndex[QQNUM%(n-1

2016-03-12 13:34:52 623 1

转载 工厂方法模式详解

作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可。               文章开头首先非常感谢各位的支持,代理模式中提到了class文件(即字节码文件)的相关知识,有一位读者说想要看有关class文件的相关内容,我也意识到了这一点,所以以后如果有在讲解那个模式的过程

2016-02-19 15:04:36 1495 1

转载 DAO设计模式

什么是DAODAO是Data Access Object数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。DAO的功能:DAO用来封装Data Source的……就比如,Connection conn = DAOFacotry.createConnection()……就可以把Driver. URL. username, passpword这一些放在DAO中以后要更

2016-02-02 12:14:13 658 1

转载 java序列化/反序列化之xstream、protobuf、protostuff 的比较与使用例子

1、背景  项目中http通信离不开对象的序列化和反序列化,通过序列化技术,可以夸语言实现数据的传输,例如把一个对象序列化后的二进制数据、xml格式数据存在文本文件,下次通过读取文件,然后反序列化一下即可重新生成该对象,抑或通过网络把序列化后的数据传输到另一个终端,对方通过反序列化后也可以重新出一个大概相同的对象出来。  在一般项目中,xml是一个不错的选择,例如微信公众平台的大多

2016-02-02 11:36:53 1171 1

转载 回调函数的实质——什么是回调函数,为什么要使用回调函数

在C/C++里面,函数的概念很好理解,就是把某个任务独立出来,封装在一起,然后给它取个名字,它可以有参数和返回值。基本上跟数学里的函数概念一致。那么,回调函数是个什么鬼呢?它和函数到底有何异同?既然已经有了函数,为啥还非要生出个回调函数来?想必,小伙伴们在刚碰到这个概念的时候,都会被这些问题困扰。网上搜一搜,有很多相关的材料,但是未必透彻。我觉得要真正理解一个概念,必须要先理解它存在的意义,也就是

2016-01-30 15:29:47 684 1

转载 序列化和反序列化

摘要  序列化和反序列化几乎是工程师们每天都要面对的事情,但是要精确掌握这两个概念并不容易:一方面,它们往往作为框架的一部分出现而湮没在框架之中;另一方面,它们会以其他更容易理解的概念出现,例如加密、持久化。然而,序列化和反序列化的选型却是系统设计或重构一个重要的环节,在分布式、大数据量系统设计里面更为显著。恰当的序列化协议不仅可以提高系统的通用性、强健性、安全性、优化系统性能,而且会让系

2016-01-29 19:48:30 368 1

转载 步步理解 JAVA 泛型编程(一)

JDK 1.5 相对于 JDK 1.4 来说变化最大的部分就是泛型,甚至可以说自 Java 1.0 发布以来也是最大的一次语言变化,因为要涉及到编译器的大改动。很早的时候大家对泛型的呼声很大,正如 C++ 的模板,C# 的泛型确实是个值得借鉴的好特性。JDK1.5 这前,很多人对于泛型是急不可耐,在 JDK1.4 下搭配一个外挂的 Generic Java 编译器,通老实 -Xbootclassp

2016-01-29 16:36:04 555 1

转载 号称性能最好的JDBC连接池:HikariCP

HikariCP号称是现在性能最好的JDBC连接池组件,具体的性能到底如何,我也没有仔细的测试过,不过从它现在的发展来看,其可能确实如它宣传的那样其性能高过目前所有的连接池组件。之前对连接池的记忆一直都是C3P0、DBCP、BoneCP,这三者中BoneCP的性能是最好的,C3P0的性能在现在来说确实是非常差的了,好像C3P0很久都没有更新了,所以我们应该杜绝在项目中使用C3P0,至于是否要使用Hi

2016-01-29 14:44:44 7371 2

转载 线程池的原理和连接池的原理

一、 线程池的原理: 线程池,究竟是怎么一回事?其实线程池的原理很简单,类似于操作系统中的缓冲区的概念,它的流程如下: 先启动若干数量的线程,并让这些线程都处于睡眠状态,当客户端有一个新请求时,就会唤醒线程池中的某一个睡眠线程,让它来处理客户端的这个请求,当处理完这个请求后,线程又处于睡眠状态。 可能你也许会问:为什么要搞得这么麻烦,如果每当客户端有新的请求时,我就创建一个新的线程不就完了?这

2016-01-29 14:27:15 464 1

转载 JDBC连接池

引言   近年来,随着Internet/Intranet建网技术的飞速发展和在世界范围内的迅速普及,计算机   应用程序已从传统的桌面应用转到Web应用。基于B/S(Browser/Server)架构的3层开发模式逐渐取代C/S(Client/Server)架构的开发模式,成为开发企业级应用和电子商务普遍采用的技术。在Web应用开发的早期,主要使用的技术是CGI﹑ASP﹑PHP等。之后,Sun公

2016-01-29 13:45:54 540 1

转载 Java Lambda表达式入门

原文链接: Start Using Java Lambda Expressions下载示例程序 Examples.zip 。原文日期: 2014年4月16日翻译日期: 2014年4月27日翻译人员: 铁锚简介(译者注:虽然看着很先进,其实Lambda表达式的本质只是一个"语法糖",由编译器推断并帮你转换包装为常规的代码,因此你可以使用更少的代码来实现同样的功能。本人

2016-01-27 18:10:24 466 1

转载 Java 项目中集成 Protocol Buffers

最近在接入某厂广告系统,需要使用 Protobuf Buffers(以下简称 PB)来进行数据交换,而在此之前,我对 PB 一无所知,经历了版本冲突、插件无效等问题之后,总算成功在项目中集成 PB。下面主要介绍 PB 的安装、IDEA PB 插件配置、Java 项目中基本的使用等:PB 安装配置下载 PB: 在 PB 官网,下载最新版(或者其他版本)PB,这里为了与 Jav

2016-01-27 11:10:24 2295 1

转载 MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/文章来源:http://www.cnblogs.com/smyhvae/p/4050825.html联系方式:[email protected]   【正文】首先需要回顾一下上一篇文章中的内容:MySQL数据库学习笔记(八)--

2016-01-26 17:52:43 554 1

转载 DButils使用详解

DBUtils是个小巧的JDBC轻量级封装的工具包,其最核心的特性是结果集的封装,可以直接将查询出来的结果集封装成JavaBean,这就为我们做了最枯燥乏味、最容易出错的一大部分工作。在使用DBUtils之前,应该注意一些问题:   1、DBUtils是JDBC的简单封装,可以和JDBC混合使用。  2、DBUtils对结果集自动封装为JavaBean是有着苛刻要求的:必须满足

2016-01-26 17:46:28 5115 1

转载 从JDBC到commons-dbutils

1、前言    玩过Java web的人应该都接触过JDBC,正是有了它,Java程序才能轻松地访问数据库。JDBC很多人都会,但是为什么我还要写它呢?我曾经一度用烂了JDBC,一度认为JDBC不过如此,后来,我对面向对象的理解渐渐深入,慢慢地学会了如何抽象JDBC代码,再后来,我遇到了commons-dbutils这个轻量级工具包,发现这个工具包也是对JDBC代码的抽象,而且比我写的代码

2016-01-26 17:40:26 529 1

转载 postgreSQL jdbc(java连接)

postgreSQL 的jdbc驱动下载地址:http://jdbc.postgresql.org/download.htmljdbc名称如下:postgresql-9.1-901.jdbc4.jarjava 连接postgreSQL的jdbc 实例如下:工具类:ConnUtil内容: package com.hw.postgres.jdbc; 

2016-01-26 16:51:23 2236 1

转载 PostgreSQL与MySQL命令的使用比较

服务启动:    1)#service postgresql start    2)#/etc/init.d/postgresql start    3)#su  postgresql       $ pg_ctl startPostgreSQL的进程号:1210、1207、服务启动:    1)#service mysqld start    2)#/et

2016-01-26 16:48:14 917 1

转载 MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/文章来源:http://www.cnblogs.com/smyhvae/p/4055183.html联系方式:[email protected] 【正文】首先需要回顾一下上一篇文章中的内容:MySQL数据库学习笔记(九)----

2016-01-26 12:24:09 577 1

转载 MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/文章来源:http://www.cnblogs.com/smyhvae/p/4050825.html联系方式:[email protected]   【正文】首先需要回顾一下上一篇文章中的内容:MySQL数据库学习笔记(八)--

2016-01-26 12:18:25 1023 1

转载 MySQL数据库学习笔记(八)----JDBC入门及简单增删改数据库的操作

【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/文章来源:http://www.cnblogs.com/smyhvae/p/4050825.html联系方式:[email protected]   【正文】                                       

2016-01-26 12:01:41 926 1

原创 Adapter基础讲解

资料传送门//1. 找到ListView listView = (ListView)findViewById(R.id.layout.listView1); //2. 初始化数据源 String[] arr_string = {“字符串1”, “字符串2”, “字符串3”}; Adapter arr_adapter = new Adapter(this, android.R.simple_l

2016-01-21 12:26:58 954 1

哈夫曼编码(带中文压缩)

利用优先级队列+DFS优化的哈夫曼编码译码器,可进行中文压缩,最高压缩率可达到1:3

2015-01-03

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

TA关注的人

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