自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (2)
  • 收藏
  • 关注

原创 网络通信关键函数理解

sockaddr_in当我们调用bind()、connect()等函数时,都需传入一个struct

2017-10-23 17:20:11 383

原创 Linux内核学习

本文主要目的是学习并归纳Linux操作系统中内核的几个基本重要知识进程

2017-10-23 17:18:32 258

原创 linux内存分配函数

bzero()函数原型:extern void bzero(void *s, int n)

2017-10-23 17:17:17 512

原创 GitHub上搭建博客&增加相册功能

目标在github上成功搭建Hexo博客实现在博客上浏览图片,添加图片功能最终效果:https://wonderxiao.github.io/说明

2017-10-23 17:15:57 3524 2

原创 解决java连MySQL时出现乱码问题

Java部分将Java编程环境设置为UTF-8编码Java 通过connector 访问 MySQL, 可是里面返回的中文字符是乱码排除一:  mysql 里面直接查询出来的字符是中文的排除二: connector的设置 jdbc:mysql://localhost:3306/aicdata?useUnicode=true&characterEncoding

2016-11-24 16:38:38 428

原创 计算机启动分析

计算机启动分析计算机的启动一般分为四个阶段:BIOS主引导记录硬盘启动进入系统BIOSBIOS程序为开机自检程序,是固化在ROM芯片中。正如其英文表达意思,Basic Input/Output System(基本输入输出系统)。硬件自检当计算机开机后,首先运行BIOS程序,检查计算机的硬件是否满足运行的初始化条件。若硬件出现问题,则主机会通过蜂鸣器发出不同含义的信号,而启动终止命令;若没

2016-09-24 21:12:55 396

原创 Caffe代码与架构介绍

在Caffe源码中语言形式为CPP形式,其主要基于一些数学函数库进行矩阵运算和一些驱动来进行图像加速。其中,还包括一些依赖项如gflags、glog、boost、protobuf、hdf5、leveldb和lmdb等。在caffe-master中主要包括一下文件夹:build:所有编译好的文件存放的位置data:存放数据的文件夹,如需要训练的数据docs:框架说明书includ

2016-05-20 17:13:46 561

原创 (一) cifar10分类训练

本次学习使用caffe-master文件在Downloads目录下,使用caffe-master。1.准备数据库  CIFAR-10(默认在caffe-master目录下)终端执行如下命令获取数据库文件chenshaobo@idea:~/Downloads/caffe-master$ cd data/cifar10/chenshaobo@idea:~/Downloads/caffe

2016-05-20 15:56:32 3251

转载 Protobuf语言指南

Protobuf语言指南l  定义一个消息(message)类型l  标量值类型l  Optional 的字段及默认值l  枚举l  使用其他消息类型l  嵌套类型l  更新一个消息类型l  扩展l  包(package)l  定义服务(service)l  选项(option)l  生成访问类本指南描述了怎样使用protocolbuffer语言

2016-04-18 16:54:04 268

原创 Vim

最近需要将系统中复制的文件复制到Vim打开的文件中,需要了解了一下。        现在,将步骤写在下面:第一步:安装gvim-gnomesudo apt-get install -y gvim-gnome第二步:复制浏览器或其他打开的文件中到系统剪切板(Ctrl+C)第三步:用Vim打开文件后,进入编辑模式(i),再按(Ctrl+V)即可。        如果发现再Vim

2016-04-18 09:42:18 262

原创 Ubuntu下安装QQ 2012

1.安装win-1.6      sudo apt-get install wine1.6(若有依赖包需要安装,则执行 sudo apt-get install -f)在安装wine的过程中,会提示要你安装一些协议包之类,选择同意即可。2.下载wine环境下运行的QQ    当下载完成并用unzip解压后,执行    sudo dpkg -i wine-qqintl_0.1

2016-04-15 10:37:53 290

原创 Centos 6.5下安装ftp

一、安装vsftpd1、检查vsftpd是否安装        $rpm -qa | grep vsftpd        #如果没有,就安装,并设置开机启动        $sudo yum -y install vsftpd        $sudo chkconfig vsftpd on2、修改与vsftpd有关的两个配置文件        $sudo vim /

2016-03-12 15:35:33 694

原创 运算符(二)

二、C的按位取反(~)与逻辑取反(!)    位运算     位运算的运算变量只能是整型或字符型数据,位运算把运算对象看作是由二进位组成的位串信息,按位完成指定的运算,得到位串信息的结果。 位运算符有:     &(按位与)、|(按位或)、^(按位异或)、~ (按位取反)。    其中,按位取反运算符是单目运算符,其余均为双目运算符。     位运算符的优先级从高到低,依次

2016-03-02 12:17:24 424

原创 运算符(一)

一、运算符优先级在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。下表给出优先级规则:优先级运算符名称或含义使用形式

2016-03-02 11:52:21 350

转载 linux中fork()函数详解

一、fork入门知识     一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。    一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进

2016-02-25 22:52:20 272

原创 SOCKET通信

一、Socket是啥?二、Socket通信三、需调用的函数四、函数在哪?怎么定义?为什么选它?先解决第一个问题。啥是Socket呢?       socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。我的理解就是Socket就是该模式的一个实现,sock

2016-02-25 22:41:54 588

原创 Linux下的sock_stream和sock_dgram

SOCK_STREAM是有保障的(即能保证数据正确传送到对方),是面向连接的,多用于资料(如文件)传送;SOCK_DGRAM是无保障的面向消息的socket,主要用于在网络上发布广播消息;可以说,SOCK_STREAM是基于TCP的,数据传送比较有保障;而SOCK_DGRAM是基于UDP的,专门用于局域网,基于广播的。SOCK_STREAM是数据流,一般为TCP/IP协议的编程;

2016-02-25 18:44:20 3904

原创 Linux 标准库下的unistd.h

unistd.h在unix中类似于Window中的windows.h!#ifdef WIN32#include#else#include#endifunistd.h含有的常量与函数:ssize_t        read(int, void *,size_t);ssize_t        write(int, const void *,size_t);

2016-02-25 08:50:25 9985

原创 机器学习心得(一)

从考完研后,开始学习机器学习。 之前接触过有关图像这方面的知识,加上最近做考研阅读做的比较多,对英文阅读可以说的上是很亲切吧。慢慢地,对于国外的教学方式,无论是语言还是教学模式都是那么的容易接受。于是看着Stanford的Andrew Ng的视频边学编领悟。现在将自己的见解总结一下。         机器学习算法的现研究的学习方式和学习模型主要有以下几种:监督学习:输入数据为训练数据;

2016-01-03 21:58:42 1862

原创 这一段时间的事

说起保研,的确心累。主要是自己之前一些错误的决定让现在自己也很难让自己很果断的说自己一定可以!大学生活即将画上句号,而这种让人惆怅的局面是自己忘了该怎么对自己说。  纠结了这么久,我已无法让自己有那么一点一点不平静了。对于现在,我只想把自己眼前的事做好,那就是对我最大的尊重,不然很多都会觉得不值得或是不可取!

2016-01-03 21:26:06 318

原创 文章标题

2015年5月19号 是个大太阳的日子 说话,是一门艺术。我第一次发觉它是如此的重要。今天走在食堂里,一个人买完早餐后,我并没有像往常一样匆匆的就离开,而是静静地坐下来先把早餐吃完。 想想还是觉得自己身体最重要,学习什么的,都得有一个好的身体。现在开始我要对自己有一个好的作息规划。给自己一个良好的安排,让自己可以不慌不忙的去应对。 今天和同学聊,聊到了

2015-05-19 13:59:04 361

原创 matlab spdiags函数语法

matlab spdiags函数语法一句话说明: Extract and create sparse band and diagonal matricesspdiagsExtract and create sparse band and diagonal matricesSyntaxB = spdiags(A)[B,d] = sp

2015-05-05 20:38:10 8677 2

原创 图像处理函数详解——padarray

功能:填充图像或填充数组。 用法:B = padarray(A,padsize,padval,direction) A为输入图像,B为填充后的图像,padsize给出了给出了填充的行数和列数,通常用[r c]来表示。padval和direction分别表示填充方法和方向。它们的具体值和描述如下:   padval:’symmetric’表示图像大小通过围绕边界进行镜像反射来扩展;

2015-05-01 22:18:43 1197

转载 奇异值分解---几何意义

此文为译文,原文以细致的分析+大量的可视化图形演示了SVD的几何意义。能在有限的篇幅把这个问题讲解的如此清晰,实属不易。原文举了一个简单的图像处理问题,简单形象,真心希望路过的各路朋友能从不同的角度阐述下自己对SVD实际意义的理解,比如 个性化推荐中应用了SVD,文本以及Web挖掘的时候也经常会用到SVD。关于线性变换部分的一些知识可以猛戳这里奇异值分解--线性变换几何意义      

2015-04-18 14:51:56 560

转载 奇异值分解--线性变换几何意义

SVD实际上是数学专业内容,但它现在已经渗入到不同的领域中。SVD的过程不是很好理解,因为它不够直观,但它对矩阵分解的效果却非常好。比如,Netflix(一个提供在线电影租赁的公司)曾经就悬赏100万美金,如果谁能提高它的电影推荐系统评分预测准确率提高10%的话。令人惊讶的是,这个目标充满了挑战,来自世界各地的团队运用了各种不同的技术。最终的获胜队伍"BellKor's Pragmatic Cha

2015-04-18 14:43:53 2153

转载 矩阵的秩与行列式的几何意义

这里首先讨论一个长期以来困惑工科甚至物理系学生的一个数学问题,即,究竟什么是面积,以及面积的高维推广(体积等)? 1 关于面积:一种映射大家会说,面积,不就是长乘以宽么,其实不然。我们首先明确,这里所讨论的面积,是欧几里得空间几何面积的基本单位:平行四边形的面积。平行四边形面积的定义,几何上说是相邻两边边长乘以他们之间的夹角的正弦。然而为了应对更一般情形和更高维度的

2015-04-18 13:09:33 642

原创 求最大子数组和

题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18。如果不考虑时间复杂度,我们可以枚举出所有子数组并求出他们的和。由于长度为n的数组有O(n2)个子数组;而且

2015-04-04 22:36:27 445

原创 C++中将打印结果输出到文件中

本人最近在蓝桥杯调试的过程中痛感到打印结果在调试界面上,脑海里是有点不情愿的。于是想出了将输出结果重定向到指定的文件上面。直接上代码:#include#include#includeusing namespace std;static int mcount = 0;int x[100];bool place(int k){//判断放置的位置是否与前面放置的皇后的位置放生冲突

2015-04-03 20:41:09 7584 1

转载 找最大值和最小值

问题描述:给出一个数组,包含N个整数,那么需要比较多少次找到最大值和最小值注意:要想得到最大值和最小值,遍历一遍数组是不可避免的。我们能减少的就是减少比较次数来提高效率方法一、遍历一遍数组,同时得到最大值和最小值具体是,定义一个max 和 min,每遍历一个数,就分别和max 和 min比较一次,直到处理完所有的数据比较次数: N+N = 2N方法二、我们可

2015-04-01 23:02:41 1081

转载 volatile的用法

volatile 影响编译器编译的结果,指出volatile变量是随时可能发生变化的,与volatile变量有关的运算,不要进行编译优化,以免出错,(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化。) 例如: volatile int i=10; int j = i; ... int k = i;    

2015-03-29 22:10:41 372

转载 fgetc fputc fgets fputs fprintf fscanf getc getchar gets putc putchar puts ungetc函数介绍

fgetc (由文件中读取一个字符)头文件: include函数声明: int fgetc(FILE * stream);说明:fgetc()从参数stream所指的文件中读取一个字符.若读到文件尾而无数据时便返回EOF.字符读取函数fgetc()可从文件数据流中一次读取一个字符,然后读取光标移动到下一个字符,并逐步将文件的内容读出返回值 : getc(

2015-03-29 20:58:37 891 1

原创 缓冲流的理解

几个C特殊的格式:1、 scanf可以滤去一些不想要的东西。举例说明如下:比如:输入:a = 1,b = 2;scanf(“a = %d,b = %d”, &a, &b);再比如:scanf("%d %*d %d",&a, &b);输入1 2 3回车(系统将1赋予m,将3赋予n,因为*号为忽略输入修饰符,表示跳过它相应的数据所以2不赋予任何变量)2. 字

2015-03-29 20:45:01 784

原创 斐波那契数列谈矩阵(2)

斐波那契数列的原理:f(n) 是第n项的值;f(1) = 1; f(2) = 1;f(n) = f(n-1) + f(n-2);故需求解那个2x2的矩阵即可,需用到二分法;选择二分法用递归求解:#define N 2using namespace std;struct matrix{ int a[N][N];};matrix mul(m

2015-03-24 20:06:51 443

转载 斐波那契数列谈矩阵(1)

斐波那契序列 集锦 (转)[定理1] 标准Fibonacci序列(即第0项为0,第1项为1的序列)当N大于1时,一定有f(N)和f(N-1)互质其实,结合“互质”的定义,和一个很经典的算法就可以轻松证明 对,就是辗转相除法 互质的定义就是最大公约数为1数学归纳法是很有用的证明方法,我们接下来这个定理用数学归纳法就很好证明: [定理2]若i为奇数, f(i)*f(i)

2015-03-24 17:20:36 1313

原创 动态创建二维数组

动态创建二维数组------使用vector不定长数组二维vectorvector > veclnt(m , vector(n)); //m*n的二维vector动态创建m*n的二维vector第一种:vector > veclnt;veclnt.resize(m);for(int i = 0;i       veclnt[i].resize(n);

2015-03-18 13:54:33 726

原创 指针~~~~~~

指针操作指针的值即为指针指向的地址;●赋值---------------把一个地址赋给指针。通常使用数组名或地址运算符&来进行赋值;注意:地址应该和指针的类型是互相兼容的。也就是说,不能把一个double类型的地址赋给一个指向int的指针。●求值---------------运算符*可取出指针指向地址中存储的数值。●取指针地址------指针变量同其他变量一样具有地址和数值

2015-03-15 15:57:51 434

原创 求排列的个数

题目:        计算3个A,2个B可以组成多少种排列的问题(如:AAABB, AABBA)是《组合数学》的研究领域。但有些情况下,也可以利用计算机计算速度快的特点通过巧妙的推理来解决问题。下列的程序计算了m个A,n个B可以组合成多少个不同排列的问题。(1)  当有m个A和n个B时,总的排列数为(m+n)!/m!/n!;(2)  由于不知道m和n哪个大,故两个值都减1,最后

2015-03-14 17:05:52 1279

原创 交换变量,找出三个中的中间那位

题目:        假设a,b,c是3个互不相等的整数,取出它们中居中的数值。        写这篇文章目的,主要是为了理解引用的概念。#includeusing namespace std;void swap(int *a,int *b){ int temp; temp = *a; //将传给a的值赋给临时变量temp *a = *b; //a和b的值交换

2015-03-14 17:05:50 526

原创 猜字母

题目:        (1)把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串;        (2)删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母;        (3)得到的新串再进行删除奇数位置字母的动作;         (4)如此下去,最后只剩下一个字母,请写出该字母。#include#includ

2015-03-14 16:59:26 472

原创 驱动学习之printk函数

(一) printk函数中几个宏的消息级别的定义:#define KERN_EMERG ""   /*紧急事件,一般是系统崩溃之前的提示信息*/#define KERN_ALERT   ""  /*必须立即采取行动*/#define KERN_CRIT      ""  /*临界状态,通常涉及严重的硬件或者软件操作失误*/#define KERN_ERR       ""  /*用

2015-01-31 14:10:30 511

secureCRT破解版

支持linux下命令行编辑,而且更容易实现支持ssh协议下windows系统下的编辑!

2014-11-16

空空如也

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

TA关注的人

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