自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

做个假设——坚持两年,我会怎么样

天才没出在象牙塔里反而来自草根!

  • 博客(45)
  • 资源 (1)
  • 收藏
  • 关注

原创 数组和矩阵

创建数组一维数组的创建方法(1)直接输入法行向量    a=[1,2,3,4] 或者  a=[1 2 3 4]        列向量    a=[1;2;3;4](2)步长生成法a=x:y              生成向量a=[x,x+1,x+2,......,y]a=x:inc:y        生成向量a=[x,x+inc,x+2*inc,

2014-12-27 20:28:24 619

原创 C++---------lower_bound upper_bound和unique函数

int n=upper_bound(x,x+n,num)-x; int n=lower_bound(x,x+n,num)-x; int n=unique(x,x+n)-x;lower_bound()返回的是第一个大于等于num的位置(从0开始)upper_bound()返回的是第一个大于num的位置(从0开始)unique()表示 去除重复元

2014-11-30 16:14:20 604

原创 JAVA基础---1

(1)

2014-11-24 22:00:50 475

转载 简明 Vim 练级攻略

目录(?)[-]第一级 存活第二级 感觉良好第三级  更好更强更快更好更强更快第四级 Vim 超能力在当前行上移动光标 0   f F t T  区域选择 actionaobject 或 actioniobject块操作 C-v自动提示 C-n 和 C-p宏录制 qa 操作序列 q a 可视化选择 vVC-v分屏 split 和 vsplit结束语

2014-11-13 11:51:54 441

原创 Linux笔记---1

bit Byte8bits=1Byte1024Byte=1KB1024KB=1MB1024MB=1GB开机以后 CPU去找内存中某个指定内存的数据(自举)多道处理程序---->分时系统(time sharing)Ken Thompson 和 Dennis RitchiePDP 汇编语言----> Unics后来更名

2014-11-11 17:33:29 403

转载 Unix时代的开创者Ken Thompson

自图灵奖诞生以来,其获得者一直都是计算机领域的科学家与学者,而在所有这些界的图灵奖中只有唯一的一界有个例外,那就是Ken Thompson与Dennis M. Ritchie,他们都是计算机软件工程师。Ken Thompson,1943年出生于美国新奥尔良。1960年,Ken进入加州大学伯克利分校主修电气工程。1965年从伯克利毕业后,又花了一年的时间在该校取得了电子工程硕士的学位。不知道是时

2014-11-10 18:26:08 773

转载 基于baseline、svd和stochastic gradient descent的个性化推荐系统

文章主要介绍的是koren 08年发的论文[1],  2.3部分内容(其余部分会陆续补充上来)。koren论文中用到netflix 数据集, 过于大, 在普通的pc机上运行时间很长很长。考虑到写文章目地主要是已介绍总结方法为主,所以采用Movielens 数据集。变量介绍部分变量介绍可以参看《基于baseline和stochastic gradient de

2013-11-10 21:10:23 2151 1

转载 基于baseline和stochastic gradient descent的个性化推荐系统

文章主要介绍的是koren 08年发的论文[1],  2.1 部分内容(其余部分会陆续补充上来)。 koren论文中用到netflix 数据集, 过于大, 在普通的pc机上运行时间很长很长。考虑到写文章目地主要是已介绍总结方法为主,所以采用Movielens 数据集。要用到的变量介绍:Baseline estimates     object f

2013-11-10 21:07:25 1880 2

转载 基于neighborhood models(item-based) 的个性化推荐系统

文章主要介绍的是koren 08年发的论文[1],  2.2neighborhood models部分内容(其余部分会陆续补充上来)。koren论文中用到netflix 数据集, 过于大, 在普通的pc机上运行时间很长很长。考虑到写文章目地主要是已介绍总结方法为主,所以采用Movielens 数据集。变量介绍(涉及到的其他变量可以参看上面提到的相关文章):利用p

2013-11-10 21:04:59 2157 1

转载 基于物品的协同过滤推荐算法——读“Item-Based Collaborative Filtering Recommendation Algorithms”

最近参加KDD Cup 2012比赛,选了track1,做微博推荐的,找了推荐相关的论文学习。“Item-Based Collaborative Filtering Recommendation Algorithms”这篇是推荐领域比较经典的论文,现在很多流行的推荐算法都是在这篇论文提出的算法的基础上进行改进的。一、协同过滤算法描述推荐系统应用数据分析技术,找出用户最可能喜欢的东西

2013-11-05 11:38:07 839

转载 推荐系统-基于用户的最近邻协同过滤算法(MovieLens数据集)

基于用户的最近邻算法(User-Based Neighbor Algorithms),是一种非概率性的协同过滤算法,也是推荐系统中最最古老,最著名的算法。我们称那些兴趣相似的用户为邻居,如果用户n相似于用户u,我们就说n是u的一个邻居。起初算法,对于未知目标的预测是根据该用户的相似用户的评分作出预测的。本文中运用的是MovieLens数据集,关于这个数据集的介绍可以参看http:/

2013-11-05 11:37:02 2311

转载 每天只要做好三件事就行了

一个人一天能做的事情有限。平均来算,一个人能够活 29000 天,减去 30 岁之前的 11000 天,只剩下 18000 天,当然也有人会更多。一天过了就过了,你不能暂停,也不能借,不能回头。时间,只有一个方向。-----------------------------------------------------------------------------------------

2013-09-13 19:36:12 950

原创 error LNK2019 无法解析的外部符号

通常编写函数时,会把声明放到头文件(*.h)中,而把函数定义放在源文件(*.cpp)中,接口和实现分离,这样在其他源文件中使用时包含对应的头文件即可。然而在有的时候却出现:error LNK2019 无法解析的外部符号。出现这种错误,通常有两种情况(1)关于内联函数的编译器在编译时会对内联函数进行展开操作,但是编译器只能在包含的头文件里搜索函数的定义体,如果头文件只有声明,显然编译

2013-08-23 10:26:51 973

原创 数据结构--二叉链表的基本操作

首先对于二叉树链表的基本操作熟悉,都是一些最基本的操作#include#include#include#includeusing namespace std;#define OK 1#define ERROR 0#define NIL ' '#define OVERFLOW -1typedef char TElemType;typedef int Status;t

2013-08-15 19:59:20 1407

原创 数据结构--二叉树的存储

二叉树的存储结构(1)顺序存储表示#define MAXSIZE 100typedef int TElemType;typedef TElemType SqBiTree[MAXSIZE];用一组地址连续的存储单元依次从上而下、自左向右存储完全二叉树上的节点元素。对于一般二叉树,则将其每个节点与完全二叉树的节点相对照,存储在一维数组的相应分量中。在最坏的情况下,一个深度为k且只有

2013-08-06 20:26:13 915

原创 数据结构--树和二叉树

树的递归定义:(1)有且只有一个特定的称为根的节点(2)当n>1时,其余节点可以分为m(m>0)个互不相交的有限集,每个集合又是一棵树。并且称为根的子树。                                           二叉树是另一种树形结构:(1)每个节点至多只有两颗子树(即二叉树中不存在度大于2的节点)(2)二叉树的子树有左右之分,其次序不能任意颠倒。     

2013-08-06 20:04:10 512

原创 数据结构--串的堆存储

以一组地址连续的存储单元存放串值字符序列,这些存储空间是在程序执行过程中动态分配的。在C语言中,存在一个称之为“堆”的自由存储区,并利用malloc()和realloc()来管理。优点:堆分配存储结构的串既有顺序存储结构的特点,处理方便,操作中对串长又没有任何限制,更加的灵活。存储结构为:typedef struct{ char *ch; int length;}HString

2013-08-05 16:55:32 951

原创 数据结构--串的顺序储存

用一组地址连续的存储单元存储串值的字符序列,为每个定义的串变量分配一个固定长度的存储区。串的实际长度可以在预定长度的范围内随意,超过预定义长度的串值则被舍去,称之为“截断”。对于串长的表示有两种:一是以下标为0的数组分量存放串的实际长度;二是在串值后面加一个不计入串长的结束标记字符。 这里串的顺序存储使用第一种方式记录串长。//串的顺序存储方式#include#include#i

2013-07-29 17:56:45 958

原创 数据结构--串

串是由零个或者多个字符组成的有限序列,一般记为  s='a1a2a3....an'(n>=0)。串中字符的数目n称为串的长度。零个字符的串称为空串,它的长度为零。串有3种表示方法,分别是(1)定长顺序存储表示(2)堆分配存储表示(3)块链存储表示  其存储形式为://串的定长顺序存储表示#define MAXSIZE 255 //用户自定义串长typedef cha

2013-07-26 20:13:39 805

原创 数据结构--字符串的接收操作

C语言读取字符的函数:(1)int getchar(void)    功能:从标准设备读取下一个字符    返回值:所读字符。若文件结束或者出错,则返回-1  (2)int fgetc(FILE *stream)    功能:从文件指针stream指向的文件中读取一个字符,读取一个字节后,光标位置后移一个字节 返回值:返回所读取的一个字节。如果读到文件末尾或者读取出

2013-07-11 21:11:57 1225

原创 数据结构--顺序栈的基本操作

若存储栈的长度为StackSize,则栈顶位置top必须小于StackSize。当栈存在一个元素时,top等于0,因此通常把空栈的判定条件定为top等于-1。顺序栈的存储结构为:typedef struct{ int data[MAXSIZE]; int top;}SqStack;顺序栈的基本操作有:Status InitStack(SqStack &S){ S.top=

2013-07-08 20:17:24 742

原创 数据结构--顺序队列基本操作

在队列的顺序存储结构中,除了用一组地址连续的存储单元依次存放队列头到队列尾的元素之外,常常另设两个指针front和rear分别表示队列头元素及队列为的元素。这里我们做约定:初始化建立空队列时,令front=rear=0,每当插入新的队列尾元素时,尾指针增加1;每当删除队列头元素时,头指针增加1。因此在非空队列中,头指针始终指向队列头元素,而尾指针时钟指向队列尾元素的下一个位置。无论是f

2013-07-08 18:09:17 1404

原创 数据结构--链队列的基本操作

链队列的存储结构:typedef struct QNode{ int data; struct QNode *next;}QNode,*QueuePtr;typedef struct{ QueuePtr front; QueuePtr rear;}LinkQueue;链队列的基本操作:Status InitQueue(LinkQueue &Q){ Q.f

2013-07-08 17:10:39 860

原创 数据结构--链表、栈、队列存储结构总结

链表、栈、队列的顺序存储方式为:#define MAXSIZE 10typedef int ElementType;//顺序表的存储结构typedef struct{ ElementType data[MAXSIZE]; int length;//表示线性表的长度,初始为0,最大值为MAXSIZE}SqList;//栈的顺序存储typedef struct{

2013-07-08 10:54:00 832

原创 数据结构---链栈的基本操作

链栈的数据存储为:typedef struct StackNode{ int data; struct StackNode *next;}StackNode,*pStackNode;typedef struct LinkStack{ pStackNode top; pStackNode bottom;}LinkStack;链栈的基本操作为:void InitStack(

2013-05-09 20:23:03 945

原创 数据结构--参数传递的问题解释

在单链表中数据存储为:typedef struct Node{ int data; struct Node *next;}LNode,*LinkList;这里LNode等价于struct Node     LinkList等价于struct Node*。对于链表的初始化可以有一下的三种方式void   InitList(LinkList&   L);  void  Ini

2013-05-09 17:34:28 1251

原创 流程控制语句

ECMA-262 规定了一组流程控制语句。语句定义了ECMAScript 中的主要语法,语句通常由一个或者多个关键字来完成给定的任务。诸如:判断、循环、退出等。

2013-05-05 18:47:54 648

原创 运算符

ECMA-262 描述了一组用于操作数据值的运算符,包括一元运算符、布尔运算符、算术运算符、关系运算符、三元运算符、位运算符及赋值运算符。ECMAScript 中的运算符适用于很多值,包括字符串、数值、布尔值、对象等。不过,通过上一章我们也了解到,应用于对象时通常会调用对象的valueOf()和toString()方法,以便取得相应的值。

2013-05-05 18:45:13 608

原创 数据类型

ECMAScript有六种数据类型,其中有五种简单的类型:Undefined、Null、Number、String和Boolen。 还有一种复杂的数据类型--Object。ECMAScript不支持任何创建自定义类型的机制。故所有值都将会是以上6种数据类型之一。一、typeof 操作符typeof操作符是用来检测变量的数据类型。对于值或者变量使用typeof操作符会返回如下字符串。

2013-05-05 18:08:59 600

原创 语法、关键字和常量变量

任何一种语言的核心都会描述这门语言最基本的工作原理,而Javascript的语言核心就是ECMAScript。一、语法构成(1)区分大小写ECMAScript 中的一切,包括变量、函数名和操作符都是区分大小写的。例如:text 和Text 表示两种不同的变。(2)标识符1.第一字符必须是一个字母、下划线(_)或一个美元符号($)。2.其他字符可以是字母、下划线、美元符号或数

2013-05-05 16:29:22 817

原创 一 使用JavaScript

一、标签的解析xxx这组标签,是用于在Html页面中插入JS的主要方法,它的主要属性有一下几个:type:必选。可看作是language的替代品。表示代码使用的脚本语言的内容类型。如“type=text/javascript”language:已弃用。原来用于代码使用的脚本语言,由于大多数浏览器忽略它,所以不要使用。src:可选。表示包含要执行代码的外部文件。charset:可选。

2013-05-05 15:57:46 508

原创 数据结构--循环单链表

循环链表的存储结构和单链表是相同的。不同的地方是循环单链表的最后一个指针指向了头结点,不是单链表的“NULL”,这样有表尾很容易找到表头,但是由表头到表尾如果链表很长,则会很费时。因而,循环单链表设置尾指针而不是头指针。存储结构typedef struct LNode{ int data; struct LNode *next;}LNode,*LinkList;基本操作如下

2013-05-03 09:38:09 783

原创 数据结构--删除单链表中重复元素

思路很简单,遍历找到重复就删除,注意细节而已。void DeleteRepNode(LinkList L){ LinkList s,q,p=L->next; while (p) { q=p->next; while(q) { if(p->data==q->data) { s=q->next; free(q

2013-05-02 13:11:58 1612

原创 数据结构--单链表“环"的问题(2)

已经实现了环的建立和判断是否有环,现在就开始后面的几个问题了!环的入口点在哪里?环的长度在哪里?环外面的长度是多少?有环单链表长度是多少?从链表头到环入口点等于(n-1)循环内环+相遇点到环入口点,于是我们从链表头、与相遇点分别设一个指针,每次各走一步,两个指针必定相遇,且相遇第一点为环入口点。网上有证明很多!LinkList FindLoopPoint(LinkList

2013-05-02 11:21:35 538

原创 数据结构--单链表“环”的问题(1)

有环的定义是,链表的尾节点指向了链接中间的某个节点。比如下图,如果单链表有环,则在遍历时,在通过结点J之后,会重新回到结点D。这个有点像平躺着的“6”,有关环的问题可以使用快慢指针的方法,这里我总结一下有关环的问题:单链表的环是否存在;如果存在环,那么环的入口点在哪里;如果存在环,环的长度是多少;如果存在环,那么带环的单链表长度少;但是在我们解决这些问题的时候,有没有想

2013-05-02 10:52:31 851

原创 数据结构--求单链表倒数第K个元素和中间元素

这两个题目有着类似的地方,都可以使用传统的方法,如遍历单链表求出单链表的长度len,然后就顺理成章的转换成为了求第len-K个元素和len/2了。同样这两个题目的相似之处还表现在其优化的方式有着相似,那就是使用两个指针。求倒数第K个元素的时候,设置量个指针first和second。让fisrt先走K步,然后在让second开始走。一直到first到了链表尾部的时候那么second指向的就是

2013-05-01 10:56:41 713

原创 数据结构--单链表逆序输出

前面完成了单链表的逆序,又看到了逆序输出。这里毫无疑问自然是可以将单链表直接逆序,然后在输出的。这个思路上面是没有问题的。可关键是有没有更好的解决方式呢?当时是有的,就是递归。void reverseprint(LinkList L){ if(!L) return ; if(!L->next) { printf("%d ",L->data); return;

2013-04-29 17:13:57 1426

原创 数据结构--单链表的逆序

完成了单链表的基本操作,开始看一点关于单链表的面试题目。其中最为基础和常见的就是单链表的逆序。如下面的图示过程:第一次交换过程开始current指向了a1 在交换的过程中让,pnext=current->next(即a2)。然后将当前元素和下一个元素之间指针指向的方向改变,即后一个元素指向当前元素。直至遍历结束位置。然而在这里有两个需要注意到(1)我们很容易知道

2013-04-29 16:47:40 745

原创 数据结构---单链表的两种建立

单链表的建立有两种实现的方式:(1) 一种是和输入的顺序相同void CreateList_1(LinkList &L,int len){ L=(LinkList)malloc(sizeof(LNode)); L->next=NULL; LinkList p=L,q; for (int i=1;i<=len;++i) { q=(LinkList)m

2013-04-26 20:50:16 655

原创 数据结构--单链表基本操作

单链表的数据结构typedef struct LNode{ ElemType data; struct LNode *next;}LNode, *LinkList;单链表的基本操作://创建单链表LinkList CreateList();//单链表的输出Status ListTraverse(LinkList L);//初始单链表Status Ini

2013-04-26 19:50:59 1024

ACM动态规划

很好的学习资料,对于学习东该规划的人很有帮助,值得一看的资料

2011-09-22

空空如也

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

TA关注的人

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