自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

myzts的专栏

就像你遇见了那朵花,就像我遇见了你.

  • 博客(26)
  • 收藏
  • 关注

转载 HMM MEMM CRF 区别 联系

隐马尔可夫模型(HMM),最大熵马尔可夫模型(MEMM)以及条件随机场(CRF)是序列标注中最常用也是最基本的三个模型。HMM首先出现,MEMM其次,CRF最后。1 算法思想HMM模型是对转移概率和表现概率直接建模,统计共现概率。MEMM模型是对转移概率和表现概率建立联合概率,统计时统计的是条件概率,但MEMM容易陷入局部最优,是因为MEMM只在局部做归一化。CRF模型中,

2017-08-28 14:52:42 1491

转载 矩阵不可逆的充分必要条件

A矩阵不可逆 |A| = 0 A的列(行)向量组线性相关 R(A) AX=0 有非零解 A有特征值0. A不能表示成初等矩阵的乘积 A的等价标准形不是单位矩阵来自百度知道:https://zhidao.baidu.com/question/1923691685278958187.html

2017-07-19 10:23:31 35871

原创 简单概率问题(先验,后验)

problem:有四个盒子,有一个盒子装有礼物,玩家从四个盒子中选择一个盒子,无论玩家选择的盒子里面装没装有礼物,主持人都会拿一个空盒子给玩家看,并问玩家是否切换选择.你作为玩家,你选择切换选择还是不切换.solution:(首先确定一点就是玩家并不知道自己错没错)首先分情况,如果不换选择,玩家选择正确的概率就一直都是1/4如果切换选择:有两种情况,如果玩家选择正确了再

2017-07-17 10:24:25 665

原创 强化学习,深度学习,深度强化学习

1.深度学习:任何通过神经网络的训练和学习都是深度学习2.强化学习:基于MDP(马尔可夫决策过程),通过状态(state),决策(action),以及奖励(reward)和转化概率来进行学习的就是强化学习,通过求Q*(state,action),求pai*,复杂一点就可能不知道奖励和转化概率3.深度强化学习:深度学习和强化学习的结合,就是通过定义一个函数Q(s,a)=w1*feature1

2017-07-03 18:03:25 2195

原创 最大似然估计(Maximum Likelihood Estimate)

最大似然估计简称MLE,今天被老板(老板本科牛津,硕士斯坦福,博士普林斯顿....)问的慌,每次一说MLE自己都没有反应过来.很气最大似然估计本质就是通过试验结果估计样本的真实情况,基于的假设是:每个变量都基于一个概率分布,即独立同分布.想一想如果有100个球,80个红球,20个白球,每次取一个球不放回的话,符合独立同分布吗?放回的话肯定符合独立同分布.对于放回实验,实验100次加入取红球

2017-05-22 19:01:47 1543

原创 c++类的继承:私有继承,公有继承,保护继承

说一下私有成员,公有成员,保护成员的性质:1.公有成员在类外可以通过类直接访问,保护成员和私有成员都不能直接访问#include "iostream"using namespace std;class a{public: int a_public_element;private: int a_private_element;protected: int a

2017-05-12 13:29:53 605

转载 SQL的几种连接:内连接、左联接、右连接、全连接、交叉连接

SQL连接可以分为内连接、外连接、交叉连接。 数据库数据:           book表                                          stu表 1.内连接1.1.等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的所有列,包括其中的重复列。1.2.不等值连接:在连接条件使用除等于运算符以

2017-05-11 20:33:59 426

原创 c++重载[]运算符

#include "iostream"#include using namespace std;class String{public: char s[100]; String(char str[]){ strcpy(s, str); } char operator[](int a)const{ return s[a];

2017-05-10 22:07:01 243

原创 c++内联函数

c++内联函数与常规函数的主要区别不在于编写方式,而在于编译器如何将它们组合到程序中.学过编译原理的应该知道,程序调用函数必须

2017-05-10 11:52:35 324

原创 归并排序

1.合并两个有序数组的函数,n表示a数组长度,m表示b数组长度,c表示最终的a和b所有元素有序(递增)排列的数组 void sortedarray_merge(int a[],int n,int b[],int m,int c[]){ int i=1,j=1,k=1; while (i<=n && j<=m) { if (a[i]<b[j]) {

2017-05-10 00:16:25 359

原创 快速排序

快速排序是基于分治的思想,每次都选择一个基准数,使得左边的都小于基准数,右边都大于基准数(默认基准数为每个排列第一个数),所以基本的思想是用两个指针,分别从最左边和最右边开始寻找,两个如果都找到了话就交换两个数字,需要注意的是,先从左边扫?还是先从右边扫,考虑21(基准数为2)这种情况,如果先从左边扫,寻找大于基准数的数字,找不到.算法结束,如果先从右边扫,寻找小于基准数的数字,找到了为1,交换变

2017-05-09 17:04:49 290

原创 最小(大)堆,堆操作

首先介绍一下堆.堆是一种特殊的完全二叉树,最小堆满足条件是所有父节点的值都比子节点要小,最大堆满足条件是所有父节点的值都比子节点要大.则最小堆根节点的值是最小的,最大堆根节点的值是最大的.由上不难知道,最小(大)堆个数不唯一.#include "iostream"using namespace std;const int maxn=1000;int h[maxn];int n;

2017-05-09 00:11:51 402

原创 基本最短路算法的分析和比较

1.Floyd-Warshall(求连通图任意两点最短路径)核心代码: for (int k=1; k<=n; k++) { for (int i=1; i<=n; i++) { for (int j=1; j<=n; j++) { if (dis[i][j]>dis[i][k]+dis[k][j]) {

2017-05-07 15:30:11 1164

原创 埃及分数

首先说下吧,这题测评系统答案有问题,nefu(http://acm.nefu.edu.cn/JudgeOnline/problemShow.php?problem_id=358)和rqnoj(https://www.rqnoj.cn/problem/240),后台数据存在争议先看测试数据的可以进rqnoj,直接贴代码吧,迭代加深,很多人用的是gcd,我就知道用浮点数了,注意把握好误差的设置,代

2017-04-25 13:06:24 440

原创 指针详细总结

int *p;int (*p)[10];int *p[10]1.把声明中指针变量的名字去掉就可以得到指针的类型,比如int *p,去掉p,指针类型为int *,int (*p)[10]指针类型为int (*)[10]注意,int (*)[10]代表的是一个指向含有是个元素的数组.

2017-04-24 20:07:28 337

原创 链表的总结(链表排序、翻转、删除节点)

简要说下思路:node* sort_linklist(node *head){//链表排序(类比选择排序) node *sortedarray,*previous,*temp; for (int i=1; i<=n; i++) { sortedarray=creatnode(); sortedarray->data=selectmm_li

2017-04-22 16:55:32 340

原创 矩阵快速幂(poj3070)、快速幂

#include const int mod=10000;struct matrix{ int a[2][2];}origin,res;struct matrix multiply(struct matrix x,struct matrix y){ int i,j,k; struct matrix temp; memset(temp.a, 0, sizeof

2014-12-29 23:40:38 632

原创 通过dfs求排列

#include #include "stdlib.h"int book[10],a[10],n,t;int comp(const void*a,const void*b){ return *(int*)b-*(int*)a;}void dfs(int num,int time,int m){ int i; if(m==time) {

2014-12-25 21:44:20 429

转载 大数乘法

# include# include# includevoid multiply(char* a,char* b,char* c){    int i,j,ca,cb,* s;    ca=strlen(a);    cb=strlen(b);    s=(int*)malloc(sizeof(int)*(ca+cb));    for (i=0;i

2014-12-22 18:37:02 338

转载 判断字符回文

int isSymmetry(char str[]){ int length=strlen(str); if(length==0)return -1; for (int i=0;i {  if(str[i]!=str[length-i-1])return 0; } return 1;}http://blog.csdn.net/cyhleo/article/det

2014-12-22 11:21:04 356

原创 qsort(快速排序)用法

首先需要写一个比较的函数comp#include "stdio.h"#include "stdlib.h"int comp(const void *a,const void *b){ return *(int*)a-*(int*)b;//上面为ab,这个地方也为ab,即从小到大,如果方向不这样比如ab,ba就是从大到小}int main(){ int a[3],i;

2014-12-10 20:29:10 561

原创 对int和void递归的总结

1void#include "stdio.h"void abc(int n){ printf("%d\n", n); if (n > 0) { abc(n - 1); printf("%d\n",n);\\从这个地方开始就是abc下面 }}int main(){ abc(2); system

2014-12-08 16:17:34 2456

转载 return的作用

return语句是用来结束函数的,对于子函数来说就是结束子函数的调用,返回到主函数调用子函数的地方继续执行后面的语句,对于主函数来说就是结束该程序,返回操作系统,相当于汇编里面的ret。至于return后面跟什么就要看你的程序想要返回什么了,一般正规程序中的函数都是以return语句来结束的,即使自己本身不想函数结束时返回什么值,但是保险起见还是加上return,对于void类型的函数就可

2014-12-03 22:48:36 541

转载 2014NEUQ图灵杯(C语言解法)

已下都是参考他人答案加入自己看法的代码C题第一是把题目看错了,本以为是一个数经过多少次变化能变得89,其实是小于n的数不包括89的数,能变到89的总和(可悲的语文成绩)#include #include #include long int pf(long int c){ int h=0,b; while(c) { b=c%10; h+=b*

2014-12-01 16:22:35 483

转载 *a,与a[]区别

#include #include int main(){ char *a="abcdefg"; *(a+3)='n'; printf("%c",*(a+3)); system("pause"); return 0;}运行这个程序会报错而运行下面一个程序#include #include int main(){ char a[]="abcdefg";

2014-11-30 13:40:56 2263

转载 C语言中传值问题

网上看了一些,自己归纳了一下传值大概分为已下3种:1:值传递 2:地址传递 3:引用传递1:值传递

2014-11-30 00:36:14 490

空空如也

空空如也

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

TA关注的人

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