自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 将字符串s倒置的各种方法:说什么微软面试题,其实在K&R书上早就有了

异或的方式交换两个字符,可以节省空间:int main(){ char a='a'; char b='b'; a ^= b; b ^= a; a ^= b; printf("a:%c b:%c",a,b);}打印结果:a:b b:a其他问题总结:strcpy的段错误问题下段代码要发生段错误,为什

2014-02-28 21:44:04 1231

原创 读书笔记:C程序设计语言,第五章:指针与数组(部分课后题解)

5.6 指针数组以及指向指针的指针unix有个程序sort,可以完成一个功能:根据每行字符串的第一个字符,按字典顺序排序。本节试着写了一个例子,简化版的sort。使用 指针数组 可以高效的完成这个功能,如下图所示:由指针组成的数组,每一个指针指向一行。不用移动文本行,仅仅改变指针的指向,就完成了这个功能移动文本行将带来复杂的储存管理和巨大的开销在比较字符的时候我们使用了

2014-02-28 12:44:56 1489

原创 读书笔记:C程序设计语言,第四章:函数与程序结构 (含课后题全解)

设计好的函数可以封装具体的操作细节,使整个程序的结构更加清晰,降低修改程序的难度c语言多是由许多小函数组成。一个程序可以保存在一个或多个源文件中,各个文件单独编译,也可以和库中已经编译过的函数一起加载声明函数时声明参数类型每一个外部对象只能有一个定义(我的理解就是只能对全局变量定义一次)4.1函数的基本知识类似于unix的grep功能,请在下面的语句中:   A

2014-02-26 06:48:51 1562

原创 读书笔记:C程序设计语言,第三章:控制流( 课后题全解)

第三章主要讲控制流。答案摘自:练习题全解:"The C Programming Language", 2nd edition, Kernighan and RitchieAnswers to Exercises3.1 语句与程序块一个分号代表语句结束由{ }组成复合语句,也称程序块3.2 if-else语句else是可选的,所以多个if语句中的e

2014-02-24 15:19:19 1747

原创 读书笔记:C程序设计语言,第二章:知识要点 和 课后题全解

这一章覆盖下面几个问题Variables and constants are the basic data objects manipulated in a program.Declarations list the variables to be used, and state what type they have and perhaps what their initial va

2014-02-23 15:06:53 1258

原创 读书笔记:C程序设计语言,第一章:知识要点 和 课后题全解

缘由为了加强C语言基础,觉得阅读这本优秀的书籍。首先,我会总结一些我认为的要点,如果有优秀的例子和题,我也觉得需要记录下来。第一章比较基础,总结相关要点即可。printf("%3d %6d\n",i,j):使用这样方式可以固定打印出来的数字占据的宽度。比如i占3个字符。而%6.1f:则表示整个字符至少占6位,并且小数一位。#define的使用:替换某些字符,可以不仅仅是数字,可

2014-02-22 17:10:41 2168

翻译 读书笔记:“PRML”之Mathematical notation和Introduction

缘由PRML是机器学习的经典书籍。我想通过两步部分来大致了解这本书的核心所在,这两个部分也就是不可或缺。数学概念:为这本书的学习打好基础和ntroduction:了解这本书具体讲什么Mathematical notationIntroduction

2014-02-21 16:36:57 1461

原创 读书笔记:"算法导论"之RANDOMIZED-SELECT(快速选择算法)

算法导论一书是:Introduction to Algorithms Third Edition(已上传网盘),其第二版的中文版广为人知:算法导论缘由由于一道题需要使用这个方法处理,题目:输入n 个整数,输出其中最小的k 个。例如输入1,2,3,4,5,6,7 和8 这8 个数字,则最小的4 个数字为1,2,3 和4。该算法,即RANDOMIZED-SELECT算法,可

2014-02-20 21:40:28 4617

原创 离线计算:推荐准确度和第一首歌曲命中的保存以及图像展示

我已经做了什么到目前为止,我已经使用了两种计算相似度的方式(皮尔逊和Jaccard系数)计算了歌曲相似度:利用协同过滤算法的皮尔逊系数:计算歌曲相似度计算歌曲相似度:Jaccard系数结果也存储在了相应的表:simmusicsimmusicjaccard而且能够有一种策略产生推荐列表,也设计了一种验证推荐列表的准确度的方式(离线计算,验证推荐的准确性(失败)

2014-02-20 19:47:59 1168

原创 读书笔记:推荐系统导论中与音乐有关部分

对那本推荐系统的大书中,所有出现music词的地方作一个总结。

2014-02-19 14:32:40 101

原创 总结:推荐系统的架构

主要突然想起,搜东西不一定只搜网页,如搜一图片的话效果更好比如这样:https://www.google.com.hk/search?q=%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F&client=ubuntu-browser&um=1&ie=UTF-8&hl=en&tbm=isch&source=og&sa=N&tab=wi&ei=UDgEU-nYGKSUiAfp

2014-02-19 12:54:04 153

原创 计数算法(Counting sort )

原理核心思想:如果有10个人,给其年龄排序,当我们知道某一个人比另外5个人都大时,我们就知道他应该排在第6位。直接看一次排序的完整过程,对下图中的A数据排序,注意该算法需要一个辅助数组,如下所示:(图摘自Introduction to Algorithms,8.2Counting sort,P196)我们可以看到数组A=[2,5,3,0,2,3,0,3]所带排序的数组,而数组C

2014-02-19 11:15:27 4056

原创 总结:来自"v_JULY_v"的微软面试100题(2010年)

缘由以笔试、面试为目标学习算法。这位v_JULY_v同学非常牛逼,总结了很多很多算法的知识,这次我打算先将微软面试100题的简单题就总结一遍,我发现对我来说难度还是比较大的,所以我这次打算先总结看的懂的题。以下内容的基本上都参考于:微软面试100题2010年版全部答案集锦(含下载地址)

2014-02-18 15:54:59 2179

原创 python:线程池的实现

对Python线程池进行详细说明

2014-02-18 00:09:18 1896

原创 linux安装、编程环境搭配

缘由:早就该固定使用了,中途也断断续续的使用一段时间,作为程序员大概应该使用linux,至于为什么呢?我现在暂时还回答不能很完整,关键就在服务器方面linux占决定统治地位,所以必须要早熟悉linux接口,而且在分布式方面linux也非常重要。再直观、势利一点,总是在招聘上看见熟悉linux下开发java、c/c++等等的语句。所以在linux下开发、学习很

2014-02-16 13:56:35 921

原创 计算歌曲相似度:Jaccard系数

什么是Jaccard系数其公式如下:可以看出,其含义是集合A、B中相同的个数,除以A与B交集个数。可以看出,Jaccard系统主要关注的是元素是的个体是否相同,而不能用数值具体表示其差异。从这个意义上讲,我认为适合我的音乐,音乐推荐中计算相似度的过程。因为,我确定两个用户是否相似就是判断这两个用户是否收藏了相同的歌曲。举例:A=[shirt,shoes,pants,socks]

2014-02-15 16:02:38 8485 3

原创 相似度计算方式的总结:java或python实现代码

缘由这是之前定了的方案:我想要对比由不同相似度计算出来的歌曲相似度表,再由不同的歌曲相似度表来产生推荐列表,比较推荐列表中出现的我随机删除了的本来就被用户收藏了的歌曲的数量肯定有一种相似度计算公式最优根据原理分析为什么这种相似度方案最优即可产生理论,有了论据所以,现在我目标是总结常见的几种相似度计算方式的原理,并且利用mahout找到其实现源代码,能够利用源代码做一些简答的实验

2014-02-12 21:51:55 9195

原创 初步认识bloom filter(布隆过滤器)以及java实现代码

今天一个不小心看了一下bloom filter(),做了一下总结。原理其实很简答,但是很聪明。维基里面有个下例子的图,对这个问题讲的很清楚对于一个元素,判断它是否存在于集合内,我们用不同的hash算法去算他,比如有3个,假设每一个算出来都是一个数吧,以这个数为下标,我们就把位数组里面相应的数设置为1,因为位数组只能设置为0或者1。3个hash函数算完后,我们得到三个下标,看着三

2014-02-11 00:48:38 8008 3

原创 挖掘暗信息:分析用户收藏的歌曲的歌手对产生推荐列表产生的影响

缘由如果某个用户偏爱某一位歌手的歌曲,那么我们调高这位歌手的歌曲在推荐列表里的比重。显然是非常有意义的。那么,我怎么知道用户是否偏爱某一位歌手呢?就是计算这个用户收藏的歌曲的歌手的熵。熵是无序程度,值越大混乱程度越大,如果值为0的话,就表示没有混乱,用户只喜欢一个歌手的歌。那么我来看看熵值到底和歌手有什么关系。计算熵比如用户收藏了10首刘德华的歌曲,计算熵的代码:sin

2014-02-10 16:05:53 1625

原创 读书笔记:“集体智慧编程”之第九章:高阶分类-核方法与SVM

我们已经学过的分类器包括:决策树贝叶斯分类器神经网络其中神经网络作为分类器的使用是第六章课后题的一个要求。本章继续研究分类器:线性分类器核方法和支持向量机(SVMs)本章使用一个小小的例子,用于分析得出,各种分类器优势和弱势。因此,我们要明白:将一个复杂的数据集扔给算法,然后希望算法直接产生精确的分类,这是不可能的。我们必须学会选

2014-02-09 15:05:16 2477 1

原创 离线计算方案改进:产生推荐列表时的歌曲相似度计算应累加,而非替换

缘由上一次离线计算失败了,简单说:我产生的推荐列表里没有我删除了原本用户收藏的歌曲。这是因为我单纯的以所有用户收藏的歌曲相似度来排序,只取前10个/20个/30个。考虑的太不全面了。详情请见博客:离线计算,验证推荐的准确性(失败)。改进的方案我可以结合相似用户和相似歌。对于一个用户首先找到相似用户,再把相似用户里面没有被目标用户收藏的歌选出来,作为集合A。再拿到这个用户收藏的歌

2014-02-08 01:58:53 1215

原创 离线计算,验证推荐的准确性(失败)

目的算好了歌曲的相似度,我们就可以为用户产生推荐列表了。但是,我现在想试试产生的这个推荐列表到底有多准呢?具体思路如下收藏歌曲数大于或等于五十的用户,我会从这位用户已经收藏的歌曲里面随机删掉10%的歌曲,再用剩下的90%歌曲产生推荐列表。推荐列表只产生10首歌曲,比对这10首歌曲与删掉的10%的歌曲的重复度。比如,收藏数为50的用户,删掉10%,还剩45首,利用这45首产生一个推荐

2014-02-06 00:39:54 1287

原创 利用协同过滤算法的皮尔逊系数:计算歌曲相似度

想要什么数据已经足够多了,我现在想法就是单独维护一张歌曲相似度的表,每首歌曲有10首相似度歌曲,并且有相似度的程度,介于0到1之间。首先来明确我有什么,我有3张表。user表:用户1.4万左右music表:10万首歌曲记录(只针对中文歌曲)favorites表:888153条,收藏记录。表内也就是一个用户ID和一个歌曲ID难道我会计算这10万首歌曲的相似度?没有必要吧?

2014-02-05 14:05:46 4467 2

原创 读书笔记:“集体智慧编程”之第八章:对数值进行预测(构建价格模型)

在上一章节,我们接触到的决策树,比较适合对数据的分类进行预测,以及我们之前学过的分类器也是如此。但是当我们对数值型结果进行预测的时候应该怎么办呢?具体什么叫做对数值型结果进行预测首先需要明确一下。比如:我们要在拍卖行竞价购买一个笔记本电脑,这台笔记本电脑有一些参数:处理器的速度,RAM的容量,硬盘的大小,屏幕的分辨率以及其他因素。显然,我们最终对其的定价必然要考虑这些参数,而这些参数的重要性各

2014-02-04 22:59:22 1562 1

原创 读书笔记:“集体智慧编程”之第七章:决策树

什么是决策树?如果将决策树和上一章的分类器一起讲述,那么决策树这种算法也是用于对物品分类的,书有一个非常简单的例子,能帮助我理解什么是决策树。给你一个水果,你可以通过以下方式判断出这是一个什么水果。可以看出,决策树上就是一个又一个if-then的语句联系起来的。而且从最终结果,我们也能够看出整个推理的过程。而上一章讲述的贝叶斯分类器里每一个单词的重要性通过计算而得到的。

2014-02-02 01:54:30 1997 2

metronic.bootstrap

metronic.bootstrap.rar

2015-03-24

CLRS_exercises_2.1-1.xlsx

Using Figure 2.2 as a model, illustrate the operation of INSERTION-SORT on the array A =(31, 41, 59, 26, 41,58).

2015-02-26

WpdPack vs2010使用的winpcap的api

WpdPack vs2010使用的winpcap的api

2013-10-06

空空如也

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

TA关注的人

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