- 博客(35)
- 资源 (1)
- 收藏
- 关注
原创 个性化推荐典型任务与传统算法
典型任务和算法(模型)1.相似匹配(基于内容)1.1 标签匹配1.2 LDA主题模型2.评分预测2.1.large scale 问题。为什么不直接进行回归预测呢?2.2.user or item based 协同过滤以user-based协同过滤为例:找出与当前User i最相似的N个User,并根据N个User对Item的打分估计 i 对该Item的打分。相似度采...
2018-08-07 09:54:49
1974
原创 2018深度学习在个性化推荐中的应用
深度学习在个性化推荐中的应用结论得益于深度学习强大的表示能力,目前深度学习在推荐系统中需要对用户与物品进行表示学习的任务中有着不错的表现,但优势不如图像与文本那么显著[1]。深度学习与分布式表示简介深度学习的概念源于人工神经网络的研究。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的有效表示,而这种使用相对较短、稠密的向量表示叫做分布式特征表示(也可以...
2018-08-07 09:46:13
9612
转载 N的阶乘末尾有多少个0
问题:N的阶乘(N!)中的末尾有多少个0? 例如:N = 5,N! = 120.末尾有1个0. 分析:想到这个问题,有人可能第一反应就是现求出N!,然后再根据求出的结果,最后得出N!的末尾有多少个0。但是转念一想,会不会溢出,等等。 其实,从"那些数相乘可以得到10"这个角度,问题就变得比较的简单了。 首先考虑,如果N的阶乘为K和10的M次方的乘
2016-09-11 23:42:10
1004
原创 约瑟夫环出圈问题三种求解方法
#coding=utf-8# 递归直接求出def fun_recursion(m,k): """ f[1]=0; f[i]=(f[i-1]+k)%i = (f[i-1] +m%i) % i = (f[i-1] + m) % i ; (i>1) :param m: 长度 :param k: 第k数出环 :return: """
2016-09-02 15:00:18
5394
转载 Java垃圾收集器
Java垃圾收集器转载自:@觅思.澈 http://www.cnblogs.com/gw811/archive/2012/10/19/2730258.html 概述 说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史远远比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收
2016-08-23 20:59:03
365
转载 五大常用算法之三:贪心算法
贪心算法一、基本概念: 所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。 贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前
2016-08-23 15:40:28
464
转载 五大常用算法之二:动态规划算法
一、基本概念 动态规划过程是:每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种多阶段最优化决策解决问题的过程就称为动态规划。二、基本思想与策略 基本思想与分治法类似,也是将待求解的问题分解为若干个子问题(阶段),按顺序求解子阶段,前一子问题的解,为后一子问题的求解提供了有用的信息。在求解任一子问题时,列出各种可能
2016-08-23 14:55:32
308
转载 五大常用算法之一:分治算法
分治算法一、基本概念 在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(快速傅立叶变换)…… 任何一个可以用计算机求解的问题所需的计
2016-08-23 14:51:22
326
原创 回溯法解决八皇后问题(循环/递归)
# 回溯法解决八皇后问题def place(l, k): for i in range(1,k): if l[i] == l[k] or abs(k-i) == abs(l[k]-l[i]): return False return True# 循环def queue(n): l = [0]*(n+1) k =
2016-08-22 21:15:23
1246
原创 图的最短路径(dijkstra算法/floyd算法)
public static int Dijkstra(int[][] matrix,int m, int v0,int v1) { int MAXINT = 9999; int MAXNUM = m+1; int dist[] = new int[MAXNUM]; //距离 int prev[] = new int[MAXNUM]; //前趋节点
2016-08-16 00:09:20
422
原创 串的模式匹配算法(暴力/KMP)
def index(pstr, subStr): i, j = 0, 0 while ilen(pstr) and jlen(subStr): if pstr[i] == subStr[j]: i += 1 j += 1 else: i = i-j+1 j = 0 return i-l
2016-08-15 00:49:14
418
原创 树的前序中序后序非递归遍历
class Tree: # def __init__(self): # pass def __init__(self, data=None, left=None, right=None): self.data = data self.left = left self.right = rightdef firsttraverse(t)
2016-08-14 23:44:01
272
转载 计算机科学小知识
原码, 反码, 补码 详解:http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html
2016-07-23 17:01:58
428
翻译 我是一个无聊的程序员(但是我以此为荣)
原文作者:Dan Kim 原文链接:I’m a boring programmer (and proud of it) 我有件事要忏悔-我不是一个摇滚明星程序员。我也不是黑客,我不懂忍术,也没人称我为巫师。即使没有花哨的标签,但我依然感到骄傲。我是一个不错且可靠的程序员,每天努力并且享受工作。 但是每周我都都会看到一个叫忍者的程序员,我猜他能以难以置信的精确度来切割代码。我读到过有关科技摇滚明
2016-06-16 14:24:31
475
原创 《python算法笔记》(一)为什么要学习算法
学习算法是为了更有效率地解决问题,并且让程序运行的更快。我们来做一个小实验,在python解释器下输入下面的代码:>>> count = 10**5>>> nums= []>>> for i in range(count):... nums.append(i)...>>> nums.reverse()这段代码并没有什么实际用处。只是把一堆数字添加到一个空list里,然后反转这个li
2016-06-14 12:21:09
1462
转载 Hinbernate ManyToMany JPA注解
查了好多资料old:@ManyToMany 注释:表示此类是多对多关系的一边,mappedBy 属性定义了此类为双向关系的维护端,注意:mappedBy 属性的值为此关系的另一端的属性名。例如,在Student类中有如下方法:被控方: @ManyToMany(fetch = FetchType.LAZY, mappedBy = "student
2016-04-19 17:20:56
566
原创 由函数计时器引发的思考
由于需要对算法进行计时,所以要引入计时来计算函数运行时间。 由此搜索到time模块的clock方法:timeimport timedef func(): sleep(0.1)start = time.clock()func()end = time.clock()time = start - endprint time运行结果:>>> 0.000816 输出结果是不符合我们的预期的。
2016-04-14 00:05:16
358
翻译 如何应对编程疲劳
如何应对编程疲劳原文链接:http://webuilddesign.com/how-to-cope-with-programming-fatigue/ 什么引起的编程疲劳,我们应该如何应对 21世纪程序员的需求量很高,还伴随这特殊的待遇,例如:丰厚的薪水,医疗保险,免费的饭菜,免费参加体育运动,健身,旅游和社团活动, 如果你是个自由职业者,你还会拥有自由支配时间的灵活性。但是尽管拥有这些丰
2016-03-30 14:20:13
614
原创 Hibernate的findByExample莫名加入了值为空的的属性做查询条件
一直以来我都没有用过Hibernate的findByExample()方法,前几天有一个见得的搜索功能需要实现。于是我想着测试一下该方法(懒得写SQL)。了解一下机制。ZcDO zcDO = new ZcDO()zcDO.setZcmc("投影仪")zcDao.findByExample(zcDO)在终端输出结果:select ... from ... where (this_.NUM=? an
2016-03-26 11:39:24
3124
2
原创 你只是追逐时髦的码农
时髦的技术,时髦的语言看起来真的很棒时髦终究只是一股风,被人为吹起来的风,我们不能被潮流牵着鼻子走,因为终究我们会被下一波潮流冲走,而留下的都是一些浮藻。时髦不是因为他完美而流行,是因为有人在鼓吹他,然后人们觉得新奇开始效仿他。我们往往不知其里,只慕其表。而这往往会让我们有一种错觉,我飞起来了,我睥睨天下,我掌握这一切,在狂风里猪也能上天。我们以为我们能实现很多了不起功能,绚丽的画面,但是你只是调
2016-03-26 10:50:58
330
原创 select2与Bootstrap冲突解决
需要在bootstrap.css , select2.css 后加入下面的css/***Select2 Plugin***/.form-control .select2-choice { border: 1px solid #e5e5e5; background-color: #fff; background-image: none; filter: none; he
2016-03-26 00:40:32
8388
原创 决策支持系统调研
决策支持系统决策支持系统(Decision Support System)是利用计算机协助人类解决一些半结构化与非结构化的问题。相关技术:数据检索,信息智能处理,自然语言处理(决策理论,统计学,语言学们管理科学,数学建模,认知科学,数据库,人工智能,人机交互,数量模拟,软件工程与各种信息与网络科技的集成知识);---------------------------------结构-
2016-03-19 14:33:40
1563
原创 JavaWeb实现图片异步上传,在前台展示,并以二进制保存到数据库
通过(ajaxFileupload.js)提供的ajaxFileUpload方法,异步上传图片,在后台获取并转二进制先存入session中,成功后返回图片的id到ajax,并通过jQuery改变 img src的地址请求该图片的二进制资源。JavaScript /** * 上传图片 */ $("#upload").on('click',function(){ $("#upfile").click();
2016-03-19 14:22:41
18247
6
原创 《ALPHAGO vs 李世石》- 人工智能攻下人类最后的堡垒?
19年前IBM的深蓝打败了欧洲国际象棋世界冠军,在民众中引起轩然大波。这是第一次人工智能的学术界向社会展现自己的实力,人类第一次受到了机器的威胁。当时国内有人发声:“有种你和我们的围棋冠军打一场”。确实对当时的技术与设备性能来说围棋很复杂,因为深蓝所擅长的(穷举)在围棋面前简直不堪一击,因为围棋的可能性超过了宇宙中院子的个数(10^187>>10^80),之后人工智能一次次带给人们惊喜与恐惧。
2016-03-17 16:43:04
844
转载 JPA总结——实体关系映射(一对一@OneToOne)
原文地址:JPA总结——实体关系映射(一对一@OneToOne)作者:阿飞注意:本文出自“阿飞”的博客 ,如果要转载本文章,请与作者联系!并注明来源: http://blog.sina.com.cn/s/blog_49fd52cf0100s0y7.html一对一(@OneToOne)· 单向关联# 注释@OneToOne定义如下:@Target({M
2016-03-08 17:26:21
899
转载 Hibernate之双向一对多关系总结
双向一对多关系,一是关系维护端(owner side),多是关系被维护端(inverse side)。在关系被维护端需要通过@JoinColumn建立外键列指向关系维护端的主键列。其中默认inverse=false,而mapedBy="xxxx"相当于inverse=true。( 在一对多中,如果要一方维护关系,就会使在插入或是删除"一"方时去update"多"方的每一个与这个"一"的对象
2016-03-08 15:54:49
422
原创 Mark《黑客与画家》
2.我们从画家身上借鉴什么东西?1)如何学习编程,通过实践学习编程2)保留作品,定期从头开始,而不要长年累月地在一个项目上不断工作,并且试图把所有的最新想法都已修订版的形式包括进去。3)通过范例学习4)逐步完成,不能盼望先有一个完美的规格设计。5)一个优秀的程序必须比他应该又的样子更好,坚持一丝不苟注重细节。6)考虑自己的心里周期
2016-02-24 17:43:15
315
原创 javaScript常用正则表达式
//日期yy-mm-dd正则表达式检查格式 var cssj=$(".cssj").val(); var result = cssj.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[46
2015-10-10 15:15:51
340
原创 javaScript读取页面表格中每个单元到EXCEL中
function method2(tableid) //读取表格中每个单元到EXCEL中 { var curTbl = document.getElementById(tableid); var oXL = new ActiveXObject("Excel.Application"); //创建AX对象excel var oWB = oXL.Work
2015-10-10 15:13:53
686
原创 java web如何根据用户使用的浏览器来提示用户更新或更换浏览器
java web如何根据用户使用的浏览器来提示用户更新或更换浏览器主要有两个步骤:第一:通过拦截器后台获得用户的浏览器信息。并设置提示参数String agent = request.getHeader("user-agent");if(agent.contains(" chrome")) request.setAttribute("isChrom",1);else re
2015-07-14 21:00:53
1443
原创 从头学习计算机之计算思维(第二讲 符号化,计算化与自动化)
0和1与易经—语义符号化表达与计算(1)什么是易经《易经》是自然现象与变化规律-》人事现象及其变化规律-》其他现象及其变化规律(2)易经如何表达自然现象将现象抽象为符号,进行符号组合,利用符号组合表达自然现象 更多的组合,更多的语义,更多的语义,更多的变化(3)已经怎样区分各种组合要素符号化的关键是区分与命名---术语体系(4)即应怎样研
2015-06-04 12:15:09
3135
原创 从头学习计算机之计算思维(第一讲 计算,计算机与计算思维)
1.计算思维的提出缘由-学科的发展,知识的膨胀周以真教授提出计算思维,Dennis提出计算的伟大原理。《computational Thinking》计算思维是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。计算思维的本质就是抽象(abstraction)与自动化(Automation)即在不同层面进行抽象,以及将这些
2015-06-03 20:41:36
10510
转载 编程中最没用的东西是源代码,最有用的东西是算法和数据结构(转载)
重要的不是你用什么开发,而是你在开发什么。程序=算法+数据结构过程=对象+属性+方法+事件程序员的秘诀是:编程、编程、再编程。编程的秘诀是:思索、思索、再思索。自由固不是钱所能买到的,但能够为编程而卖掉。编程为了生活,生活为了编程。不要认为编程是一项任务,其实是一次让人羡慕的机会!编程之乐何处寻,数点梅花天地心。假如编程易懂得
2015-04-29 19:27:18
938
1
原创 Machine Learning学习笔记(个人原因暂停更新)
WelcomeSupervised Learning监督室学习:回归分析,分类Unsupervised Learning非监督室学习:聚类
2015-03-25 22:15:00
391
maxent tutorial slides
2018-04-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人