自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(181)
  • 资源 (1)
  • 收藏
  • 关注

原创 CUDA C入门1 --- 并行计算

在了解什么是cuda之前,需要先知道什么是gpu;OK,那么GPU有哪些特性呢?OK,那么什么是CUDA呢?那这里为什是异构计算呢?最后让我们用一个CUDA C的hello world来结束这篇blog。

2022-03-27 22:35:51 1141

原创 c++——空间配置器

以下是阿狸对c++中空间适配器的学习总结吗,希望可以帮助到大家。什么是空间是适配器?顾名思义就是为了高效的管理空间,进行空间的申请与回收。其在我们使用c++时候,一直在默默的工作。虽然我们在日常工作中用不到,但是了解它的原理,就像了解一件事情的背后,对我们理解c++有更好的帮助。接下来就让我为大家来揭秘!为什么需要空间适配器呢?我们在c++中使用vector,map等容器的时候,所需要的空间都是需要通过new来申请的这样代码虽然可以运行,但是会有以下不足之处。1:空间的申请与

2020-11-11 18:05:47 588

原创 国庆游玩攻略

终于到了国庆节,我要喝我的去杭州和我的小北鼻约会;出发到杭州之后就已经是10.2了,到的这么晚,肯定要和宝贝睡到12点了。那么10.2就只能在市内玩了10.2去趟游乐园吧!!!,和宝贝还没去过游乐园10.3 - 10.4:看海(住一晚)因为规划的比较早,所以现在没有看票,先看下时间;看了票,需要一个小时多一点;具体细节待定10.4 - 10.5:go to 魔都10.4号早上出发,中午到上海,看看上海的夜景(细节待定),座晚上的高铁回杭州好了,到家就已经是

2020-09-13 22:57:27 403

原创 mysql——事务管理的简单介绍

什么是事务?事务就是一组mysql语句的组成,这些语句存在逻辑上的相关性,这一组语句要么全部成功,要么全部失败,是一个整体;mysql提供一种机制,保证达到这样的效果。这就是事务为什么需要事务呢?举个栗子:就拿银行系统来讲,张三想要给李四转账三百;那么对于银行来讲,在扣除张三的三百之后,就得给李四的账户上加上三百。这就必须让这两个数据一起执行。这就引入了我们事务的应用。我们可以开启一个事务,然后提交这个事务,就可以保证这两个语句均执行掉。好了,我们说了事务的概念和应用,那就让我们看看事务

2020-07-26 22:05:02 228

原创 网络基础——数据链路层&ARP

阿鲤在之前已经把应用层,传输层,网络层都总结分享了;但是还差链路层,今天补上在说链路层之前,让我们先认识一下以太网①:以太网不是一种具体的网络结构,而是一种技术标准;即包含了数据链路层的内容,也包含了一些物理层的内容;eg:网络拓扑结构,控制访问方式,传输速率等;②:例如以太网中的网线必须使用双绞线;传输速率有10M,100M,1000M等③:以太网是当前应用最广泛的局域网技术;和以太网并列的还有令牌环网,无线LAN等介绍了这么多,那么以太网帧的格式是怎样的?①:源地址/目的地址

2020-07-26 13:49:54 542

原创 网络基础——网络层(ip协议详解)

我们知道网路分层存在TCP/IP五层模型:应用层:负责应用程序之间的数据沟通;自定制协议;知名协议(HTTP/FTP/SSH协议)传输层:负责端与端之间的数据沟通(端口与端口之间);封装端口信息(TCP/UDP协议)网络层:负责地址管理与路由选择;(选择最优路径);(IP协议,路由器)链路层:相邻设备之间的数据传输(两个网卡之间,通过mac地址地址标识)(以太网协议(Etherne)交换机)物理层:负责光电信号的传输(以太网协议,集线器(比如双绞线的长度直径,等等))应用层和传输层,

2020-07-25 21:37:45 7297 5

原创 微信视频使用的是什么协议?—— udp协议的介绍

微信视频,什么最重要?时效性!那怎样才可以保证有校性呢?tcp协议这么多控制!时效性应该不够把(ps:tcp协议的介绍)嗯,是的;tcp协议为了保证数据的准确传输,做了回复,重传,网络探测等等一系列的控制,这些控制都保证了数据的完整性;但是!它却影响了数据段传送速率。是呀,那怎样解决呢?嗯:这就要清楚我们的udp协议了!首先我们介绍一下udp协议的特点1:无连接:知道对端的ip和端口号就行了,不需要建立链接;2:不可靠:没有确认机制,没有重传机制;如果因为网络故障无法发送

2020-07-21 23:51:53 9672

原创 STL源码刨析——sort

以下是阿鲤对STL源码刨析中sort函数的学习总结;希望可以帮助到大家:首先看看reference-c++上是怎样对sort函数描述的由图可以看出,sort是有两个版本的;第一个版本是对区间内的所有呀元素按照从小到大的顺序排列;第二个版本则是使用了一个仿函数作为区间的排序标准的。ok,我们现在知道了sort由两个版本,那就让我们现在走进源码的世界把!版本一:template<class _RanIt> inline void sort(const _RanIt _Fi

2020-07-21 00:00:51 325

原创 c++之多态详解

以下是阿鲤对c++中多态的学习总结,希望可以帮助到大家1:什么是多态?2:多态的定义和实现3:多态的原理首先让我们看看什么是多态?顾名思义,就是多种形态,具体点讲就是在完成某个行为的时候,不同的对象会产生不同的状态。那么c++是怎样定义多态和实现的呢?在c++中想要构成多态,需要满足以下两个条件:1:调用函数的对象必须是指针或引用2:被调用的函数必须是虚函数,且完成了虚函数的重写举个栗子:#include<iostream>using names

2020-07-19 22:01:52 289

原创 mysql——索引的简单介绍

这是阿鲤对mysql的索引和事务的介绍,适合初学者;如果你之前不了解数据库,请看这两篇文章。mysql基础mysql表的基础操作1:索引的创建2:索引的原理索引,是提高数据库性能的必要之选,是物美价廉的;不用加内存,调sql;只需要create index就可以了。只要执行了正确的索引,查询速度会提高百倍,千倍;常见的索引有:主键索引(primary key),唯一索引(unique),普通索引(index),全文索引(fulltext)我们首先说一下这些索引的创建方法:主键..

2020-07-19 20:32:33 1605

原创 网络基础——浅入深出

一:url是什么?二:DNS协议三:三次握手四:四次挥手五:tcp协议格式六:http协议

2020-07-19 18:08:31 616

原创 B树的介绍和实现(图解实现)

以下是阿鲤对B树的学习总结,希望可以帮助到大家。一:B树的介绍 1:为什么需要B树 2:B树的规则二:B树的实现 1:分裂 2:富含详细注释的代码一:B树的概念1:为什么需要B树我想大家都知道AVL树,红黑树数据结构,他们都可以高效的对数据进行搜索,那么为什么该需要B树呢?这是因为上述的数据结构都是在内存中使用的,那么当我们的数据量过大,内存中存储不下的时候应该怎么办呢?对于这样的数据我们就可以放在硬盘里面了...

2020-07-12 12:11:03 1205 1

原创 详细介绍https

以下是阿鲤对https的学习总结,希望对大家有所帮助。一:什么是https二:为什么需要https三:TLS/SSL的介绍四:数字证书五:HTTPS的加密流程一:什么是httpshttps是基于http协议的,通过对http的传输加密和身份认证保证了传输的安全性。如果你还 不了解http请看阿鲤的这篇博客简单介绍http协议;https的主要作用:对数据进行加密,并建立一个信息安全通道,来保证传输过程数据的安全;对网站服务器进行真实的身份认证。 比如我们访问一个https

2020-06-27 16:31:13 2255

原创 mysql表的基础操作: Create,,Retrieve,Update,Delete(大量示例)

以下是阿鲤数据库基础查询的学习总结以及大量的练习,如果大家可以将此篇博客的练习做完,那么有校的加深大家对数据库的使用;如果你还不了解数据库,请浏览这篇博客数据库基础一:create二:retrieve三:update四:delete一:create语法:INSERT [INTO] table_name [(column [, column] ...)] VALUES (value_list) [, (value_list)] ... value_list

2020-06-26 20:09:05 709

原创 Mysql内置函数的介绍(包含大量示例)

以下是阿鲤对mysql内置函数学习的总结,希望可以帮助到大家;如果你不了解mysql,可以先看一下阿鲤的另一篇博客mysql基础一:日期函数二:字符串函数一:日期函数函数名称 描述 current_date() 当亲日期 current_time() 当前时间 current_timetamp() 当前时间戳 date(datetime) 返回datetime参数的日期部分 date_add(date, interval d_value_ty

2020-06-26 14:51:32 247

原创 图解字典树+简单实现+应用(算法题-字典序)

以下是阿狸对字典书学习的总结,希望可以帮助到大家一:字典树的介绍二:字典树的简单实现三:字节跳动真题——字典序

2020-06-23 23:29:54 620

原创 五种IO模型的介绍(内附epoll服务器的简单实现)

以下是阿鲤对五种常用IO的总结,希望可以帮助到大家。一:同步异步&阻塞非阻塞二:五种IO模型三:fcntl函数四:select,poll,epoll

2020-06-20 20:51:01 340

原创 MySOL基础

1:什么是数据库?2:安装,链接,分类3:mysql的架构4:服务器,数据库,表关系5:库操作,表操作6:表的约束注:centos7.5的环境注:centos7.5的环境数据库是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合,可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。(来源于百度百科)二:mysql的基本使用1:l...

2020-04-21 13:35:40 2577 1

原创 python基础语法篇2

1:for循环2:if语句,and/or,bool3:操作列表4:元祖

2020-04-20 15:59:30 279

原创 python基础语法篇1

一:变量和简单的数据类型二:列表注意:运行环境centos7.5, python3.6一:变量和简单的数据类型1:注释#后面加注释语句#这是一个注释2:变量python中的类型不像c/c++中那样需要明确指出,只需要给出一个变量,它就可以推导出类型;类似于c++中的auto关键字a = 666 #整型b = 3.1415926 #浮点数str1 = '...

2020-04-19 13:51:01 247

原创 一个逻辑图简单告诉你什么是MMU

MMU是Memory Management Unit的缩写,中文名是内存管理单元,有时称作分页内存管理单元(英语:paged memory management unit,缩写为PMMU)。它是一种负责处理中央处理器(CPU)的内存访问请求的计算机硬件。它的功能包括虚拟地址到物理地址的转换(即虚拟内存管理)、内存保护、中央处理器高速缓存的控制,在较为简单的计算机体系结构中,负责总线的仲裁以及存储体......

2020-03-26 21:42:18 379

原创 什么是HTTP协议?

1:序列化和反序列化2:网络数据传输格式3:认识URL4:urlencode编码&urldecode解码5:HTTP协议格式6:Cookie/Set-Cookie7:一个简单的http模型搭建...

2020-03-24 20:37:09 973

原创 单词接龙

一:题目描述:给定两个单词(beginWord和endWord)和一个字典,找到从beginWord到endWord的最短转换序列的长度。转换需遵循如下规则:每次转换只能改变一个字母。 转换过程中的中间单词必须是字典中的单词。说明:如果不存在这样的转换序列,返回 0。 所有单词具有相同的长度。 所有单词只由小写字母组成。 字典中不存在重复的单词。 你可以假设b...

2020-03-19 20:00:38 167

原创 读者写者模型&读写锁的介绍及简单实现

在介绍读者写者模型之前,先介绍一下读写锁:读写锁实际是一种特殊的自旋锁,它把对共享资源的访问者划分成读者和写者,读者只对共享资源进行读访问,写者则需要对共享资源进行写操作。这种锁相对于自旋锁而言,能提高并发性,因为在多处理器系统中,它允许同时有多个读者来访问共享资源,最大可能的读者数为实际的逻辑CPU数。写者是排他性的,一个读写锁同时只能有一个写者或多个读者(与CPU数相关),但不能同时既有读...

2020-03-12 18:07:18 348

翻译 高质量c++/c编程指南—内存管理篇

以下是阿鲤对高质量c++/c编程指南的读书笔记及自己的理解,分享出来希望对大家有用。这里是第七章的内容:1:内存的分配方式。2:常见的内存错误及其对策。3:指针与数组的对比。4:指针参数是如何传递内存的?5:free和delete把指针怎么啦?6:动态内存会自带释放吗?7:杜绝“野指针”8:有了malloc/free为什么还要new/delete9:内存耗尽怎么...

2020-03-06 12:32:48 233

原创 红黑树的插入删除及迭代器的实现(c++实现)

实现:直接上代码,有注释

2020-03-04 20:36:18 413 1

翻译 高质量c++/c编程指南—之规则篇

以下是阿鲤对高质量c++/c编程指南的读书笔记,分享出来希望对大家有用。这里是前六章的内容,比较简单,可能需要花费一两个小时阅读1:文件结构2:程序的版式3:命名规则4:表达式和基本语句5:常量6:函数设计

2020-02-25 12:59:45 442

原创 c++11——lambda表达式

以下是阿鲤对lambda表达式的学习总结,希望对大家有所帮助一:lambda表达式的存在意义二:lambda的语法三:lambda的原理一:lambda表达式的存在意义在c++98中我们想要给一个自定义类型的数组进行排序,我们需要设计自己的排序规则,再将排序规则传入sort函数中,如下#include<iostream>#include<string&...

2020-02-19 16:22:48 275

原创 c++11——右值引用

一下是阿鲤对右值引用学习的总结,希望对大家有所帮助一:移动语义二:右值引用的概念三:右值引用的使用四:完美转发一:移动语义在介绍右值引用之前,先让大家看下面这段代码#include<iostream>using namespace std;class ADD{ int m_left; int m_right;public: ADD(int...

2020-02-19 13:10:23 196

原创 Huffman Tree(c++实现)

/***************************************************************************************************名称:Huffman Tree基本概念:给定n权值作为n个叶子节点,构造一棵二叉树,若这棵二叉树的带权路径长度达到最小,则称这样的 二叉树为最优二叉树,也称为Huffman树。性质:...

2020-02-14 21:14:10 330

原创 c语言关键字总结

以下是阿鲤对c语言中关键字的总结复习,希望对大家有所帮助1:auto 2:const 3:break continue4:switch case default5:char int long float double6:while do7:if else8:for9:enum10:extern11:go to12:register...

2020-01-20 12:38:46 548

原创 网络套接字编程介绍

以下是阿鲤对套接字编程的一些理解性总结,希望对大家有所帮助;若存在错误,请慷慨指出;1:套接字编程预备知识2:socket api(套接字编程接口)介绍3:udp协议的客户端/服务端的介绍实现4:tcp协议的客户端/服务端的介绍实现

2020-01-17 21:20:37 586

原创 详解Linux下多线程

以下是阿鲤对Linux下线程的总结,希望对大家有所帮助;若有误请慷慨指出。1:线程概念2:线程控制2:线程安全注:以下的代码实现均为centos7环境;一:线程概念1:线程的介绍: 在传统操作系统中对程序的描述方式分为pcb和tcb即进程和线程;而在Linux下其进程和线程均是通过pcb进行描述的;pcb:是一个文件描述信息,其使用虚拟地...

2019-12-29 21:33:07 489

原创 Linux下的生产者与消费者模型

注:以下代码实现在centos7环境下一:生产者与消费者模型介绍消费者生产者模型是典型的多线程操作,具体介绍请看图文:如上图再生产者与消费者模型中,存在多个生产者与多个消费者;生产者王一个队列中生产产品,消费者再队列中消费产品;而且再生产时或消费时均有可能出现并行,所以这个队列必须是一个线程安全队列;二:模型的优点:1:解耦合,生产者模块与消费者模块并不直接交互,都仅操作...

2019-12-29 19:56:53 458 1

原创 详解linux下的进程信号

以下是阿鲤对Linux下进程信号的总结,希望对大家有所帮助;若有误请慷慨指出。在生活中我们处处离不开信号,很多东西都需要有信号来给我们传达信息。当我们听到上栗铃声我们就知道要上课了;当我们看到有人向我们挥手我们就知道他再向你打招呼;以上这些这些都是生活中信号的体现。那么什么是进程间信号呢?1:信号概念2:信号的种类3:信号的产生4:信号在进程中的注册和注销5:信号的捕捉处理...

2019-12-23 18:07:02 353

原创 core dumped——核心转储在调试中的使用方法

我们在Liunx环境中写代码时,有时候会碰到异常退出,而异常退出经常很难寻找,所以就出现了core dumped来保存异常退出信息,用于在调试中寻找错误信息。下面就是core dumped的使用方法;1:首先我们查看核心转储文件的大小;使用 ulimit -a选项我们会的发现core file size 为0,时系统默认2:设置core file size大小使用uli...

2019-12-23 10:31:30 685

原创 进程间通信(IPC)

因为每一个进程都要有一个独立的虚拟地址空间,在保证了进程的独立性同时,却使得进程间无法通信;所以必须要借助一定的方法进行进程间通信,阿鲤在这里主要介绍以下几种通信方式(以下均为SystemV标准)1:管道 -- 用于进程间的数据传输2:共享内存 -- 用于进程间的数据共享3:消息队列 -- 用于进程间的数据传输4:信号量 -- 用于实现进程间控制

2019-12-22 20:16:14 290

原创 Linux下的基础IO

一:标准库基础IO二:系统调用接口三:Linux对文件的管理方式四:软硬连接文件注:以下的代码实现均为centos7环境一:标准基础IO:一:首先向大家介绍的史<stdio>里面的函数三个标准输入函数1:printf():是对fprintf的封装 ,直接将stream封装成了s...

2019-12-22 12:08:33 334

原创 详解linux下的进程控制

以下是阿鲤对以下进程控制的总结,希望对大家有所帮助;若有误请慷慨指出。一:进程创建二:进程终止三:进程等待四:进程替换五:minshell注:以下的代码实现均为centos7环境一:进程创建进程创建的流程:创建一个pcb-> 复制父进程中的信息解析来图解程序创建的过程1:首先假设我们运行了一个test文件 ./test那么操作系统就会创建一个p...

2019-12-01 20:46:00 310

原创 Linux下的程序地址空间(进程地址空间-虚拟地址寻址原理)

以下是阿鲤对linux下的程序地址空间的总结,希望对部分同学能起到帮助;若有误请慷慨提出。在我们电脑上运行的每一个程序都会有一个自己的地址空间,请注意是运行起来的程序;所以真正占地址空间不是程序而是进程。那么进程的地址空间是怎样分配到呢?首先给大家一张图;上图是我们一个进程运行起来时地址空间的划分,那么这些地址空间都是怎样划分的呢?要知道每一个进程都会有一个自己的地址空间,...

2019-12-01 16:24:20 288

网络面试必备精品良药.pdf

涵盖所以可能在面试中被闻到的网络知识点,并且以问答的方式写出来;是网络面试必备精品,还是免费的哦!有tcp,ip.udp,http,https,dns,等等一些列的知识点。重要的事情说三遍:很全面!很全面!很全面!

2020-07-26

空空如也

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

TA关注的人

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