自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

EricLee23

Go Lakers!

  • 博客(74)
  • 资源 (5)
  • 收藏
  • 关注

原创 Armadillo在ubuntu下的安装与测试

Armadillo安装前需要先安装依赖库: OpenBLAS and LAPACK一、安装sudo apt-get install liblapack-devsudo apt-get install libblas-devsudo apt-get install libboost-devsudo apt-get install libopenblas-devsudo apt-get install libarpack2-devsudo apt-get install libsuperlu-de

2020-06-28 13:48:42 1509

转载 ubuntu下安装blas、cblas、lapack和atlas

转载自:https://blog.csdn.net/weixin_28949825/article/details/79426732在学习高斯过程回归时需要用到lapack,安装遇到了一些问题,最后成功安装,下面介绍一下具体的安装过程:准备工作:blas的安装包地址为 :http://www.netlib.org/blas/blas.tgzcblas的安装包地址为:http://www.netlib.org/blas/blast-forum/cblas.tgzlapack的官方包地址: http:

2020-06-28 13:39:08 5217 1

原创 IEEE提交论文时的基本步骤

1、当收到会议官方的回信后,需要根据邮件中的建议对论文进行最后的修改。2、检测论文格式的合法性修改完成后,需要在IEEE Express上进行检测论文的合法性,检测论文的格式是否满足IEEE的要求,不满足要求可能不能正常显示某些公式。首先要注册一个账号,然后输入会议的专属id,后面根据提示一步一步来,介绍一个通过率高的方法:(1)首先传入word文件,这时IEEE Ecxpress会给你的邮箱发过来一份转化后的pdf文件。(2)然后将这个pdf文件再次上传,会大大提高检测的通过率。检测通过后会给

2020-06-24 20:20:22 13504 3

原创 Ubuntu16.04中Qt5.9中使用mysql报错:Driver not loaded Driver not loaded

一般在没有配置Qt中的mysql动态库时会报错,如下所示:QSqlDatabase: QMYSQL driver not loadedQSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7db open err: “Driver not loaded Driver not loaded”参考了很多篇博客,有些过于繁琐,下面提供一种简单有效的方法。1、首先找到Qt的安装路径例如我的是/opt/Qt5.9.2/5.

2020-06-05 10:21:53 767

原创 解决虚拟机VMware黑屏、无法关机

第一种方法:1、作用重置winsock网络规范2、步骤1、左下角输入cmd,使用管理员身份打开cmd2、输入命令netsh winsock reset3、重启电脑即可如下图所示:第二种方法1、作用关闭虚拟机相关服务,重启电脑后重新手动开启相关服务。2、步骤1、按下 win + R 键,输入services.msc后回车,打开windows服务2、找到 VMware 相关的服务3、双击 这些进程,进入后将 “启用类型” 改为 “禁止” 后点击 “确定”4、所有服务进

2020-05-08 18:42:52 5132 1

原创 C/C++程序编译链接过程详解

目录1、简介2、使用g++来完成每一个步骤1、简介C/C++程序从编译到运行总共有四个步骤:1、预处理:条件编译,头文件包含,宏替换的处理,生成.i文件。2、编译:将预处理后的文件转换成汇编语言,生成.s文件3、汇编:汇编变为目标代码(机器代码)生成.o的文件4、链接:连接目标代码,生成可执行程序2、使用g++来完成每一个步骤使用HelloWorld来验证这四个过程,编写一个hello.cpp的文件,代码如下:#include <iostream>u

2020-05-08 18:18:18 992

原创 C++中STL容器总结

STL容器1、容器分类1、容器分类STL中通常将容器分为三类:顺序容器、关联容器和容器适配器。1、顺序容器 是一种各元素之间有顺序关系的线性表,是一种线性结构的可序群集。顺序性容器中的每个元素均有固定的位置,除非用删除或插入的操作改变这个位置。顺序容器的元素排列次序与元素值无关,而是由元素添加到容器里的次序决定。顺序容器包括:vector(向量)、list(列表)、deque(队列)...

2020-05-03 11:09:33 2005 2

原创 使用docker部署一个简单的c/c++程序

目的:利用docker打包一个C++程序,打印出简单的Hello-world一、首先在建立一个**hello-world.cpp**文件,程序代码如下:二、编写DockerFile文件三、创建镜像四、通过该镜像运行一个容器一、首先在建立一个hello-world.cpp文件,程序代码如下:#include <iostream>using namespace std;int m...

2020-05-02 22:12:35 9713 5

原创 docker常用命令总结

一、汇总:总的来说分为以下几种:Docker环境信息 — docker [info|version]容器生命周期管理 — docker [create|exec|run|start|stop|restart|kill|rm|pause|unpause]容器操作运维 — docker [ps|inspect|top|attach|wait|export|port|rename|stat]容...

2020-05-01 15:09:18 1160 1

原创 docker主要组成

docker的主要组成:1、docker client 客户端2、docker Daemon 守护进程Docker是C/S架构的程序,Docker的客户端向守护进程发起请求,守护进程处理完成后返回结果。Docker客户端既可以在本底访问守护进程,也可以远程访问守护进程。2、docker Image(镜像)3、docker Container(容器)镜像就相当于C++或Java中的类,...

2020-05-01 14:46:40 2378

原创 ubuntu配置docker的阿里云镜像加速器

由于docker的官方的镜像源速度太慢,在国内可以通过使用阿里云或者网易云的镜像源提高下载速度,通常使用阿里云的镜像源,下面介绍怎么使用阿里云的镜像加速器。第一步、注册阿里云账号这个也可以使用自己的支付宝账号登录,就不再赘述。第二步、登录阿里云控制台依次点击右上角控制台—>左侧边栏的产品与服务—>找到容器镜像服务,点击该服务—>点击最下面的镜像加速器第三步、配置按照...

2020-05-01 14:22:27 2006 1

原创 ubuntu上传文件到GitHub

第一步:本地安装Git如果本地没有安装Git的话,使用以下命令安装:sudo apt-get install git第二步:生成密钥 ssh-keygen -t rsa -C "你的github邮箱"例如在我的home工作目录/home/lzy下输入命令之后一直点确定(enter键)1、这时目录下会生成一个.ssh隐藏文件夹,按ctrl+h可以显示隐藏文件夹,里面有两个文件:i...

2020-04-30 21:12:59 597 1

原创 计算机网络——ARP协议

1、ARP协议介绍ARP(Address Resolution Protocol)也称地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议。它可以解决同一个局域网内主机或路由器的IP地址和MAC地址的映射问题。OSI模型把网络工作分为七层,IP地址在OSI模型的第三层,MAC地址在第二层,彼此不直接打交道。在通过以太网发送IP数据包时,需要先封装第三层(32位IP地址)、第二层(4...

2020-04-29 19:07:52 3267

原创 删除排序链表中的重复元素

1、题目描述2、解题思路代码如下:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {pub...

2020-04-29 19:06:38 120

原创 剑指offer-对称的二叉树(C++)

1、题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的2、解题思路自顶向下,递归的解决该问题,了解了对称二叉树就很容易解决该问题了。对称二叉树如下图所示:代码如下:/*struct TreeNode { int val; struct TreeNode *left; struct Tree...

2020-04-29 19:06:32 118

原创 剑指offer-链表中环的入口结点(C++)

1、题目描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null2、解题思路(1)解法11、这题我们可以采用双指针解法,一快一慢指针。快指针每次跑两个element,慢指针每次跑一个。如果存在一个圈,总有一天,快指针是能追上慢指针的。2、 如下图所示,我们先找到快慢指针相遇的点,p。我们再假设,环的入口在点q,从头节点到点q距离为A,q p两点间距离为B,p q...

2020-04-29 19:06:26 220

原创 剑指offer-二叉树的下一个节点(C++)

1、题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。2、解题思路仔细观察,可以把中序下一结点归为几种类型:1、 有右子树,下一结点是右子树中的最左结点,例如 B,下一结点是 H2、 无右子树,且结点是该结点父结点的左子树,则下一结点是该结点的父结点,例如 H,下一结点是 E3、无右子树...

2020-04-29 19:06:05 170

原创 剑指offer-从上到下打印二叉树(C++)

1、题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。2、解题思路该问题本质为二叉树的层序遍历,使用队列实现代码如下:/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), righ...

2020-04-29 19:05:57 186

原创 剑指offer-二叉树的深度(C++)

1、题目描述输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。2、解题思路利用递归自顶向下求解。代码如下:/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : v...

2020-04-29 19:05:49 144

原创 计算机网络——ICMP协议

1、协议简介IP协议是一种面向无连接的数据报协议,它是一种不可靠的协议,它不提供任何差错检验。因此网际报文控制协议(Internet Control Message Protocol)ICMP出现了,ICMP协议用于IP主机、路由器之间传递控制消息。...

2020-04-29 19:05:39 658

原创 计算机网络——IP协议

1、IP协议简介IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。1.版本号:占四位,就是IP协议的版本,通信双方的IP协议必须要达到一致,IPv4的版本就是4.2.首部长度:占四位,因为长度为四比特,所以首部长度的最大值为1111,15,又因为首部长度代表的单位长度为32个字(也就是4个字节),所以首部长度的最小值就是0101,当然,...

2020-04-29 19:05:27 434

原创 计算机网络面试常考知识点

1、ARP是地址解析协议工作原理:参考文章:添加链接描述1:首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。2:当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机 IP地址,源主机MAC地址,目的主机的I...

2020-04-29 19:05:11 423 1

原创 操作系统相关面试题

目录1、虚拟地址、逻辑地址、线性地址、物理地址的区别?2、Linux中常用到的命令1、虚拟地址、逻辑地址、线性地址、物理地址的区别?解析: 分段机制把一个逻辑地址转换为线性地址;接着,分页机制把一个线性地址转换为物理地址。(1)虚拟地址:虚拟内存映射出来的地址(2)逻辑地址:程序的段加偏移量形成的,C/C++程序中取地址求出来的地址就是逻辑地址(3)线性地址:是逻辑地址到物理地...

2020-04-29 19:04:58 223

原创 操作系统——进程和线程相关面试常见题

目录1、进程和线程有什么区别?2、进程间通信有哪些方式?3、进程同步问题4、进程有哪几种状态?5、进程调度策略有哪些?6、什么是僵尸进程?7、线程同步有哪些方式?8、什么是协程?9、什么是IO多路复用?怎么实现?10、什么是用户态和内核态?1、进程和线程有什么区别?进程(Process)是系统进行资源分配和调度的基本单位,线程(Thread)是CPU调度和分派的基本单位; 线程依赖于进...

2020-04-29 19:04:13 1521

原创 推荐3款在线编辑器(IDE)

安装IDE在电脑上会比较麻烦,特别是那种不常用的语言,而且占据了电脑的许多空间,使用在线IDE可以方便我们使用各种语言进行学习,下面推荐几个常用的在线IDE。1、OnlineGDB它支持C,C ++、python、Java等常见语言,而且界面看起来很舒服。OnlineGDB的独特功能是,您可以逐步调试您的代码。一旦代码被写入,它可以很容易地格式化,使其看起来不错。地址:https://www...

2020-04-29 18:03:50 14758 5

原创 剑指Offer——数组中只出现一次的数字(C++)

1、题目描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度为O(n),空间复杂度为O(1)。2、解题思路:我们先来看一个比较简单的情况,如果数组中只有一个数字出现一次,其他都出现两次。那么我们应该可以想到异或运算。异或运算有一个比较好的性质是:相同为0,相异为1。也就是说,任何一个数字异或它自己都等于0,而0异或任何数都等于...

2020-04-28 18:54:29 325

转载 0 、 '0' 、 "0" 、 ’\0’ 区别

转载自:https://blog.csdn.net/qnavy123/article/details/93901631① ‘0’ 代表 字符0 ,对应ASCII码值为 0x30 (也就是十进制 48)② ‘\0’ 代表 空字符(转义字符)【输出为空】 ,对应ASCII码值为 0x00(也就是十进制 0), 用作字符串结束符③ 0 代表 ...

2020-04-27 11:54:40 7086

原创 堆排序——C++实现

堆是完全二叉树的结构,因此对于一个有n个节点的堆,高度为O(logn),二叉堆是采用数组的方式来存储的,分为大顶堆和小顶堆两种:大顶堆:根节点大于等于自己的两个孩子节点。小顶堆:根节点小于等于自己的两个孩子节点。堆排序总共分为两步:1、初始化建堆:找到一个树的最后一个非叶节点, 计算公式为 (n-1)/2 -1, 然后遍历树的每个非叶节点,使其符合堆的规则。2、排序重建堆:将堆的...

2020-04-26 17:06:51 4174 3

转载 NAT协议、全球IP和私有IP

转载:帅地学编程可能你们会经常听到全球 IP(外网)和私有 IP(内网),他们的区别是什么呢?今天这篇文章来简单讲讲这到底是怎么回事。我们都知道,IPv4中的IP地址的数量是有限的,每次把一部分地址分配出去,那么就意味着能够用来分配的IP地址就更少了,而且随着现在手机,电脑等的快速发展,如果每个手机或者电脑都要求一个IP地址,那么显然IP地址是不够用的。为了解决这个问题,我们可以采取这样的策...

2020-04-24 17:25:07 417

原创 IP报文头部详解

1、版本(4位)IP协议的版本,目前的IP协议版本号为4,下一代IP协议版本号为6。2、首部长度(4位)IP报头的长度。固定部分的长度(20字节)和可变部分的长度之和。共占4位。最大为1111,即10进制的15,代表IP报头的最大长度可以为15个32bits(4字节),也就是最长可为15*4=60字节,除去固定部分的长度20字节,可变部分的长度最大为40字节。3、服务类型(8位)...

2020-04-21 00:11:17 14011

原创 UDP报文头详解

UDP首部有8个字节,由4个字段构成,每个字段都是两个字节,1.源端口: 主机的应用程序使用的端口号。2.目的端口:目的主机的应用程序使用的端口号。3.长度:是指UDP头部和UDP数据的字节长度。因为UDP头 部长度为8字节,所以该字段的最小值为8。4.校验和:检测UDP数据报在传输中是否有错,有错则丢弃。UDP校验在计算校验和的时候,需要在UDP数据报之前增加12字...

2020-04-20 23:55:16 32824

原创 TCP报文头详解

TCP报文是TCP层传输的数据单元,也叫报文段。1、端口号用来标识同一台计算机的不同的应用进程。16位源端口(Source Port):16位的源端口字段包含初始化通信的端口号。源端口和IP地址的作用是标识报文的返回地址。16位目的端口(Destination Port):16位的目的端口字段定义传输的目的地。这个端口指明接收方计算机上的应用程序接口。TCP报头中的源端口号和目...

2020-04-20 23:39:49 8484 1

原创 数据包、报文、帧等的区别

1.报文(message)我们将位于应用层的信息分组称为报文。报文就是添加了标记,封装后的数据。2.报文段(segment)通常是指起始点和目的地都是传输层的信息单元。3.数据报(datagram)面向无连接的数据传输,其工作过程类似于报文交换。采用数据报方式传输时,被传输的分组称为数据报。例如UDP的传输4.分组/包(packet)分组是在网络中传输的二进制格式的单元...

2020-04-20 22:06:10 5117

原创 短路原理

* 几乎所有语言中||和&&都遵循“短路”原理* 如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。* c++也遵循上述原则。* 当||时,找到为true的分项就停止处理,并返回该分项的值,否则执行完,并返回最后分项的值。* 当&&时,找到为false的分项就停止处理,并返回该分项的值。...

2020-04-12 10:30:52 819

原创 Linux下利用addr2line定位段错误

程序经常会莫名其妙的崩溃,引起段错误,核心已转储,还不知道到底问题出在哪,通过设置断点一点点调效率太低,通过输出的错误信息,可通过addr2line定位出现错误的地方,简单且高效。使用一个最简单的double free 的例子,可执行文件名为Debug_test.#include <iostream>int main() { int *p = new int(3); ...

2020-04-10 12:50:46 892

原创 matlab 保存图片时减少左右两侧的空白区域

matlab绘图时,生成的图片两侧会出现大面积空白区域,在论文中排版时会影响整体的比例,格式排版以及图片清晰度都大打折扣,参考以下代码可以解决:plot(peaks)title('Plot of Peaks Function')ax = gca;outerpos = ax.OuterPosition;ti = ax.TightInset; left = outerpos(1) + ...

2020-03-23 21:40:44 3596

原创 c++中priority_queue的用法

优先队列priority_queue是一种容器,它可以使得其第一个元素始终是它包含的最大元素,具体实现原理是堆排序。默认是大顶堆#include<iostream>#include<vector>#include<algorithm>#include <queue>#include <functional>using name...

2020-03-19 18:13:33 237

原创 c++中sort函数的compare

1.sort函数包含在头文件为#include的c++标准库中。2.sort函数的模板有三个参数:void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);(1)第一个参数first:是要排序的数组的起始地址。(2)第二个参数last:是结束的地址(最后一个数据的后一个数据的地址)(3...

2020-03-19 16:56:51 6579

原创 剑指offer-栈的压入、弹出序列(C++)

1、题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)2、解题思路借用一个辅助的栈,遍历压栈顺序,先讲第一个放入栈中,这里是1,然...

2020-03-19 11:00:48 179

原创 剑指offer-包含min函数的栈(C++)

1、题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。注意:保证测试中不会当栈为空的时候,对栈调用pop()或者min()或者top()方法。2、解题思路定义两个栈stack1和min_stack,stack1用来存储数据,min_stack用来记录stack1的最小值,假设入栈序列为:4、5、6、3、2、1,那么min_sta...

2020-03-19 09:52:46 196

blas、cblas和clapack安装包

blas、cblas和clapackd的安装包,不用到官网去下载了,官网有时速度比较慢 BLAS(basic linear algebra subroutine) 是一系列基本线性代数运算函数1的接口(interface)标准. 这里的线性代数运算是指例如矢量的线性组合, 矩阵乘以矢量, 矩阵乘以矩阵等

2020-06-28

Qt实现与MySQL连接

在ubuntu环境下,通过Qt实现与MySQL数据库连接,实现简单的增删查改,代码量很少,新手也能轻松看懂

2020-06-05

软件精英挑战赛初赛demo

华为软件精英挑战赛是华为公司面向在校大学生举办的大型软件竞赛,在软件精英挑战赛的舞台上,我们相信您可以充分展示软件设计与编程的能力,享受coding解决问题的乐趣,感受软件改变世界的魅力。 初赛线上:2.35s

2020-04-30

matplotlibcpp.h.tar.gz

matplotlib是受MATLAB的启发构建的。MATLAB是数据绘图领域广泛使用的语言和工具。MATLAB语言是面向过程的。利用函数的调用,MATLAB中可以轻松的利用一行命令来绘制直线,然后再用一系列的函数调整结果。该文件是用c++写的,可以在c++文件中使用

2019-10-11

HashTable.cpp

链表法实现哈希表 采用散列技术将记录存储在一块连续的存储空间中,这块连续空间称为散列表或哈希表(Hash-Table)。

2019-08-21

空空如也

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

TA关注的人

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