自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (1)
  • 收藏
  • 关注

原创 Linux系统编程常用内容总结

APUE阅读笔记 囊括了文件IO,信号机制,线程控制,进程控制,网络编程入门,高级IO入门等等内容。APUE这本书实在太厚了,因此这个笔记中只涵盖了关键部分基础知识文件与目录unix下的所有文件和目录本质上都是文件。输入与输出带缓冲的输出/输入与不带缓冲的输出/输入。进程与线程进程处理函数 fork wait exec线程处理 pthread出错处理通过引入头文件errno.h,可以通过该头文件中的接口来获知具体的异常情况用户标识常用的两种用户标识为用户id与组id。分别由getui

2021-03-01 22:57:53 556

原创 Visual Studio中C++项目调用第三方库(以OpenCV为例)

每个第三方库在用CMake build完后都会提供三类文件.h,.lib与.dll,C++调用第三方库需要同时引入这三个文件。具体操作如下:将所有需要的.h文件拷贝进include将所有需要的.lib文件拷贝进lib将所有需要的.dll文件拷贝到源代码目录下完成上述操作后,在VS里进行如下设置:右键项目->属性->VC++目录->包含文件中指定当前项目下的include文件夹右键项目->属性->VC++目录->库目录中指定当前项目下的lib文件夹右键项

2020-07-14 17:48:24 2188

原创 MQTT协议概述及其应用

MQTT概述MQTT协议是一种基于TCP/IP协议的轻量级实时通讯协议,采用发布订阅模式,与Http相比能够主动推送信息给客户端,与WebSocket相比也更加轻量级,往往用于物联网。MQTT在使用时主要有三部分 发布者,订阅者,代理服务器。订阅者连接代理服务器,订阅相关主题。发布者向代理服务器发送对应主题的内容,代理服务器会将其广播给所有订阅了该主题的发布者。目前常用的开源MQTT代理服务器有Mosquitto、EMQTTD。阿里云,百度也有提供商用的IOT平台。常用的MQTT客户端(发布者订阅

2020-07-09 15:00:22 856 1

原创 Matplotlib直方图

Matplotlib直方图这里给出一个从Excel/Csv文件中读取数据,并且用matplotlib绘制直方图的例子import matplotlib.pyplot as pltimport matplotlibimport pandas as pdimport sysif __name__=="__main__": FilePath=sys.argv[1] InitData=pd.read_csv(FilePath,usecols=[1]).values.tolist()

2020-07-01 10:20:57 268

原创 红黑树的原理及其简单实现

短期实习比较闲,摸鱼撸个RBT红黑树原理首先阐述红黑树(RBT)的原理,RBT在二叉排序树(BST)的基础上又添加了下述的五条约束:每个节点有颜色属性,要么是红色,要么是黑色。根节点必为黑色叶子节点下的空节点视为黑色红色节点的左右孩子必为黑色节点从红黑树上的任意一个节点出发到任意一个叶子节点的简单路径上,黑色节点的个数一致。(黑高相同)需要说明的是,很多博客中会告诉你叶子节点必须是黑色,实际上它指的是颜色是黑色的NIL空节点,本质上就是叶子节点两侧的空节点是黑色,从而方便理解。实现过程中

2020-06-23 13:29:25 180

原创 Matplotlib多子图折线图

最近实习需要可视化统计数据Matplotlib多子图折线图plot的画图基本流程给出数据设定字体,画布,颜色调用plot指定x,y,color,weight等等属性,需要注意x,y的数据个数要一致设置title,lim,label,legend等辅助信息如果是设置的子图,还需要设置adjust等等属性最后给出show即可下面这个是从csv中读取数据,并为每列数据画图的例子多子图折线图import pandas as pdimport numpy as npimport matp

2020-06-09 15:56:53 461

原创 Linux常用内容总结

最近学习liunx就该这么学所记录的笔记,不定期更新Linux命令格式同法: 命令名称 参数 对象长格式:–完整项目 短格式:-项目简写短格式之间是可以叠加的常用命令工作命令echo [ 字符串 | $变量 ]ehco $PATH常用环境变量都可以用path查看date “+指定格式” 指定的格式有 %t跳格 %Y年%M月%D日 %H小时 %I小时 %M分钟 %S秒 %j今年中的第几天date "+%Y-%M-%D" 年-月-日date "+%H:%M:%S" 小时:分钟:秒

2020-05-31 22:25:03 186

原创 Unity3D常用知识点总结

最近找了个U3D实习,把之前的笔记发上来Unity3D可以通过将游戏中的物体拖入新键文件夹来重复使用(往往包括该物体用到的模型,动画,贴图,脚本等等)右上可以调整Debug还是Normal模式物体unity3d下常用物体cubecylindersphereplanequadprefabs可以将全部资源整合完后的gameobject打包成prefabs供重复使用,实例和场景中的游戏物体是可以相互apply的。特殊物体Terrain(地形)常用操作:paint terr

2020-05-27 21:08:23 3042 1

原创 C#知识点全面总结

找了个U3D实习,把之前的笔记上传上来。C#学习笔记基本语法常用数据类型该初始化还是要初始化。typeof得到数据类型,这个往往用于类整型:int(Int32) ,uint ,long(int64),ulong,short,ushort浮点数:float,double,decimal其他: bool,string,char常用转义序列(同c++):\\ , \n , \" 等等注意事项:字符串是引用类型而其他类型都是值类型,可以通过@去包含一个完整字符串而避免转义@"c:\pro\a.

2020-05-27 21:06:31 2547

原创 C++知识点全面汇总

不定期更新C++14/17/20的新玩意C++编译流程预处理-》编译-》汇编-》链接cpp-》预处理器-》编译器-》汇编程序-》目标程序-》链接器-》可执行程序C++ 基础语法知识向下兼容知识各内置类型大小64位下:char 1 char* 8 short int 2 int 4 unsigned int 4 float 4 double 8 long 832位下:与64位的区别在于char* 4数组与指针的区别数组名是一个指向一个连续已分配地址的指针,并且是一个常指针变量,无法赋值

2020-05-15 16:32:56 1172

原创 QML的学习与应用:读取本地文件夹下的文件并通过列表显示

QML的学习与应用:读取本地文件夹下的文件并通过列表显示最近的数据库课设准备做一个音乐播放器,以QML/QT为构架,边学边做在CSDN上做些笔记。目前尝试实现本地音乐播放功能中读取本地文件夹下MP3文件并显示的功能,先直接上效果图。选择了某一文件并通过模型/视图构架进行了显示选择了一个没有合适文件的目录会显示出提示用户进行选择的按钮整个界面使用了QML进行编写,笔者在这个功能上花了比...

2018-11-13 00:56:24 7405 13

原创 皇后问题

皇后问题皇后问题描述如下:在一个n*n的棋盘上放上n个皇后,确保两两皇后之间不在同一列,同一行,同一对角线上,并给出最后满足条件的方法数量。这其实是一个全排列的问题的变种,棋子的列对应全排列问题中输出序列的index,棋子的行对应全排列问题的每个数。显而易见,每一行放入一个棋子后这行就不能再使用了,就相当于全排列问题中每一个数在排列中用过一遍后就不能再用了。每一行对应的列就相当于全排列问题...

2018-09-16 23:10:56 276

原创 全排列问题

全排列问题全排列简而言之是对于一个给定序列,给出其所有元素的所有排列情况。称之为一个序列的全排列。不难得出一个长度为n的序列,所有的全排列情况为n!种。 这里以n=3为例。1 2 31 3 22 1 32 3 13 2 13 1 2一共六种情况。全排列是一个典型的递归问题,每次固定一个值为i的元素在index位置上,接下来对长度为n-1的序列再做这个操作,直到index...

2018-09-15 00:51:39 199

原创 插入排序

插入排序也是最基础的排序算法之一。 假设从下标为0到下标为i的元素为已经排序完毕的元素,将下标为i+1的元素插入到0至i中合适的位置,完成一次排序。i从1到n-1进行遍历,即完成插入排序。插入排序的时间复杂度为n^2代码如下所示:#include<iostream>#include<stdlib.h>#include<vector>#incl...

2018-09-10 21:38:30 105

原创 选择排序

为了准备PAT甲级,开始复习数据结构与算法了,先从最简单的几个排序算法之一,选择排序开始。 简单选择排序的思路是下标i从0到n-1开始遍历,寻找i到n-1中的最小元素与第i个元素相交换,从而实现排序。这样的排序要二重循环,时间复杂度是n^2。下面是代码#include<iostream>#include<stdlib.h>#include<vecto...

2018-09-10 21:18:39 89

原创 getline()函数的使用

最近刷题一直涉及到getline()这个函数,所以做一个简单的小结。getline与cin的区别getline()函数用于一行输入,会输入一行内所有的字符串包括空格与换行符(空白符),而对于cin来说只能输入空白符前的字符串,也就是说只能输入一个单词而不能用于整行输入。空白符后的字符串包括空白符都会保留在缓冲区中。而这往往会影响程序后面的输入。getline函数的用法getline...

2018-09-06 03:58:09 812

原创 Tensorflow学习笔记:卷积层的实现

tensorflow中主要是用到了tf.nn.conv2d()这个函数,来进行卷积的计算,函数常用的参数如下: tf.nn.conv2d(input,filter,strides,padding) input : 一个四维的输入,第一维是batch维,后三维是输入矩阵的大小。 filte : 一个四维的过滤器,前两维是过滤器尺寸一般设置为3*3或者5*5,第三维要与输入矩阵的深度保持一致,...

2018-09-04 11:52:47 253

原创 Tensorflowr学习小结:Mnist手写数字识别

Mnist手写数字识别是利用神经网络来对手写数字0-9进行分类。简单来说这就是一个使用了监督学习的十分类问题。这里将使用前向传播,训练过程,检测正确率三个文件,并通过单隐蔽层的全连接神经网络来解决。笔者主要通过这个例子对常用的神经网络优化方法与模型持久化方法做个总结。在进入问题之前先了解一下Mnist数据集,每个手写数字是28*28像素的图片。作为机器学习中的”hello world” ,te...

2018-09-03 01:41:17 539

原创 Tensorflow学习笔记之池化层

Tensorflow学习笔记之池化层池化层的作用 池化层用于进一步缩小经卷积层处理过后的节点矩阵,从而进一步减少最后交付给全连接神经网络的参数个数。虽然池化层的作用遭到过质疑,但是在大多数模型中仍然使用了池化层。池化层的处理 池化层中有一个类似于卷积层中过滤器的设置。不过相比卷积层中过滤器的加权求和,池化层中过滤器只是简单地求相应尺寸内子节点矩阵的最大值或者平均值。池化层与卷积层的...

2018-08-08 20:54:52 1230

原创 PAT 乙级 1050 螺旋矩阵(25 分)

1050 螺旋矩阵(25 分)本题要求将给定的 N 个正整数按非递增的顺序,填入“螺旋矩阵”。所谓“螺旋矩阵”,是指从左上角第 1 个格子开始,按顺时针螺旋方向填充。要求矩阵的规模为 m 行 n 列,满足条件:m×n 等于 N;m≥n;且 m−n 取所有可能值中的最小值。 输入格式: 输入在第 1 行中给出一个正整数 N,第 2 行给出 N 个待填充的正整数。所有数字不超过 10^​4,相...

2018-08-08 16:57:41 792

原创 PAT 乙级 1049 数列的片段和(20 分)

1049 数列的片段和(20 分)给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列 { 0.1, 0.2, 0.3, 0.4 },我们有 (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 这 10...

2018-08-08 14:24:10 261

空空如也

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

TA关注的人

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