自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Keep coding

Step by step

  • 博客(96)
  • 资源 (11)
  • 收藏
  • 关注

原创 Macbook pro、air、imac 在打字好卡,延迟特别严重,要怎么解决?

filevault(文件保险箱)」这个功能打开了,这个功能在更新完系统会提示是否开启,当然你选择了开启会自动加密,根据你磁盘的大小加密的时间会不同,有5天或者1天的,加密完之后你要关闭这个功能也是需要在等同样的时间,这个加密过程是你插上电源线自动开启,拔掉电源就暂停了。解密完关掉这个功能,mac恢复以往运行,正常了。其实呢,霜天看了一下,以上这三种情况根本就是window的习惯好么,mac没有这样的情况,而且霜天的都没有打开,根本不存在以上的问题,网上一搜一大把的键盘侠,都是copy,错都错的一摸一样。

2023-08-11 13:57:39 5921 2

原创 使用hexo进行博客迁移

因为最近折腾了下,发现这玩意儿确实写个博客很费劲,打算把他拖管到github当作我的知识库网站,我的主要文章还是通过mweb写完一键发布到博客园,然后csdn记录一些杂文和思考。当某个主题的系列文章完成了很多以后,再统一将这个模块的文章向github静态博客迁移。目前使用了hexo-admin进行后台管理,因此图片植入就方便很多了,我的静态博客主要以算法题解为主,因为我不想在静态页面插入太多的图片。以上就是静态博客迁移文章的过程,感觉还挺复杂的,好在我的定位是题解,图片相对少一些,博客访问能快一点。

2023-08-06 20:39:02 244

原创 v2ex站点base64编码解码

最近在刷v站,我毕竟也是入坑不久的小白,发现各位兄弟的联系方式都是乱码,我以为是经过md5处理之类的,最后搜了下发现是对信息进行了base64编解码处理,目的是为了防止社工对个人信息的爬取处理。编码后的结果,通过命令可以对编码后结果进行解码处理。编码的概念,本文不做说明。

2023-07-27 17:41:05 617

原创 C++如何正确地在类中初始化vector成员变量

【代码】C++如何正确地在类中初始化vector成员变量。

2023-07-22 12:24:28 402

原创 VIM文本如何复制到系统剪切板?

即可,原理应该类似于把文本放入到某个寄存器当中吧,具体可以参考这篇文章:https://www.cnblogs.com/gmpy/p/11177719.html,他说的还挺详细的。若显示"+clipboard"那就说明支持,不支持的话自行Google研究下,这里不做说明。以上就是VIM文本复制到系统剪切板的一般操作介绍。接下来进入visual模式选中要拷贝的代码,输入。

2023-07-16 16:44:06 3187

原创 C++函数对象与函数指针在sort上的性能测试

上面这篇文章是在GoogleTest当中进行测试的,其测试结果仅展示了一次,因此我认为不具备说服力,因为我在自己机子上也进行了四种测试,分别使用sort在模板函数对象、普通函数对象、模板函数指针和普通函数指针等四类问题上进行了性能测试。我想起来GCC在编译时可能对代码进行了优化处理导致我所展示的结果不够明确。可以明显看到随着编译优化的降低,程序的运行效率上,函数对象更能够展现其优势。我的测试代码直接贴下面了,有需要的小伙伴自行运行吧。起初,测试的多次结果普遍显示为函数指针要更快一些。说实话我还挺困惑的。

2023-07-16 16:37:11 238

原创 MacOS触控板缩放暂时失灵问题解决

直接创建脚本xxx.sh,并在终端执行脚本。

2023-07-15 20:23:42 1893

原创 Macbook下提升开发效率的几个小工具

最近倒腾mac笔记本,记录下一些高效率的工具吧。首先就是alfred,内置可以自定义各种快捷命令查找,配合Dash来快速查找C++系统API,其实Dash中包含了各种编程所需API文档,值得下载。以前我都是直接查看cppreference.chm,现在解放双手了。

2023-07-15 14:24:14 219

原创 Vim批量注释与反注释

在使用vim编写代码的时候,经常需要用到批量注释与反注释一段代码。下面简要介绍其操作。本文记录在mac/linux下的vim批量注释。一开始我想让vim配置ctrl+/快捷键,快速批量注释,但是vim的文档中不支持这样的快捷键。如果实在要弄也能弄,下载插件vim插件NERDCommenter并进行配置即可,stackoverflow里给出了方法。但是本文只介绍通过vim命令进行批量注释。批量操作不仅可应用于注释,也可应用于批量插入等复杂操作。我认为操作起来更有意义。

2023-07-14 20:09:25 1598

原创 筛质数(埃氏筛法、欧拉筛法)

埃氏筛法和欧拉筛法筛选素数。

2022-12-18 23:23:19 364 1

原创 轻松搭建深度学习网络

结合Pytorch代码,简单介绍如何搭建一个基本的深度学习网络

2022-12-13 16:43:46 1205

原创 Datawhale机器学习学习总结22-11-27

2022-11-27日,对本次datawhale开源学习进行总结

2022-11-27 23:38:36 456

原创 卷积神经网络

本节内容学习了什么是CNN卷积神经网络,相比于全连接网络,它每次只提取部分内容作为整个网络的某些模块的运算,每个卷积可能负责图像上某个小模块的内容,比如某个卷积filter输出后得到的可能是某个该卷积想关注的图像纹理特征,我们一般是将多个卷积最终通过全连接,让局部信息和全局信息相互作用,通过全连接最终利用起整体的信息,所以也会说明卷积神经网络和全连接神经网络之间的关系,以及卷积神经网络的一些应用,比如卷积神经网络可以用于文本情感分析、语音辨识、迁移学习等等涉及图像的操作上。

2022-11-24 20:27:09 741

原创 神经网络训练不起来,怎么办?

本次学习了如何优化神经网络,要优化首先要去分析模型的样子,需要了解critical point有两种可能,分别是saddle point和local point,了解到batch-size这个超参数的大小对训练的影响以及优化器的选择。分类任务更适合交叉熵作为loss function等等优化知识。

2022-11-23 23:33:57 2066 2

原创 深度学习简介及反向传播

本文主要介绍了什么是深度学习,以及深度学习中的反向传播理论

2022-11-19 18:41:47 740

原创 误差和梯度下降

介绍机器学习中的误差来源以及梯度下降原理

2022-11-19 01:14:56 1312 2

原创 回归模型介绍

介绍了机器学习中的线性回归模型

2022-11-17 01:39:48 833

原创 机器学习介绍

李宏毅机器学习笔记

2022-11-14 19:54:57 1064

原创 Leetcode哈希表题目

文章目录217. 存在重复元素219. 存在重复元素II36. 有效的数独349. 两个数组的交集350. 两个数组的交集II706. 设计哈希映射以下为Datawhale Leetcode开源学习思路总结,以下代码均为Leetcode代码,但不一定是最优解,仅供参考学习。上图参考Carl哥的代码随想录官网,附上参考链接217. 存在重复元素C++中数据结构unordered_set有去重功能,本题遍历nums,将每个元素加入到unordered_set中即可,当每次新加入时首先在unorde

2022-05-17 19:35:39 152

原创 学习muduo时对enable_shared_from_this的思考

在学习muduo时,看到C++11的特性,在TcpConnection类的声明中,继承了enable_shared_from_this这个模板类,部分代码片段如下:class TcpConnection : noncopyable, public std::enable_shared_from_this<TcpConnection>{...}于是我在想,enable_shared_from_this是干什么的呢?enable_shared_fr

2022-03-02 00:32:17 612 3

原创 IO模型及高性能网络架构分析

IO调用操作系统一次IO过程:应用程序发起的一次IO操作包含两个阶段:IO调用:应用程序进程向操作系统内核发起调用。IO执行:操作系统内核完成IO操作。操作系统内核完成IO操作还包括两个过程:准备数据阶段:内核等待I/O设备准备好数据拷贝数据阶段:将数据从内核缓冲区拷贝到用户进程缓冲区其实IO就是把进程的内部数据转移到外部设备,或者把外部设备的数据迁移到进程内部。外部设备一般指硬盘、socket通讯的网卡。一个完整的IO过程包括以下几个步骤:应用程序进程向操作系统发起IO调用请

2022-01-29 00:15:52 3447 1

原创 Leetcode优先队列题目

文章目录215. 数组中的第K个最大元素347. 前K个高频元素451. 根据字符出现频率排序以下为Datawhale Leetcode开源学习思路总结,以下代码均为Leetcode代码,但不一定是最优解,仅供参考学习。优先队列参考链接c++优先队列(priority_queue)用法详解,若链接失效,自行百度用法。215. 数组中的第K个最大元素第一种做法直接排序,然后按地址访问第K个即可,简单,不做解释;第二种就是使用优先队列,我们采用大顶队,然后弹出k-1次,最后位于大顶堆top的位置元素

2022-01-24 00:46:37 377

原创 Leetcode队列与⼴度优先搜索题目

以下为Datawhale Leetcode开源学习思路总结,以下代码均为Leetcode代码,但不一定是最优解,仅供参考学习。(笔记待补充)622. 设计循环队列346. 数据流中的移动平均值225. ⽤队列实现栈286. 墙与⻔752. 打开转盘锁279. 完全平⽅数542. 01 矩阵322. 零钱兑换剑指 Offer 13. 机器⼈的运动范围...

2022-01-22 23:15:14 335

原创 Leetcode单调栈题目

文章目录单调栈496. 下一个更大元素I739. 每日温度316. 去除重复字母以下为Datawhale Leetcode开源学习思路总结,以下代码均为Leetcode代码,但不一定是最优解,仅供参考学习。单调栈单调栈的介绍(参考链接)496. 下一个更大元素I我们通过单调栈对nums2进行遍历,同时使用unordered_map保存key对应下一个更大元素为value,建立map映射关系。那么我们就要分析单调栈进行入栈操作时,需要的条件是什么,我们的目的是找当前位置下一个更大的元素,因此单调

2022-01-20 01:59:10 4952

原创 Leetcode堆栈与深度优先搜索题目

文章目录堆栈基础知识155. 最小栈20. 有效括号227. 基本计算器II150. 逆波兰表达式求值394. 字符串解码946. 验证栈序列栈与深度优先搜索200. 岛屿数量133. 克隆图494. 目标和841. 钥匙和房间695. 岛屿的最大面积130. 被围绕的区域417. 太平洋大西洋水流问题1020. 飞地的数量1254. 统计封闭岛屿的数目以下为Datawhale Leetcode开源学习思路总结,以下代码均为Leetcode代码,但不一定是最优解,仅供参考学习。堆栈基础知识155.

2022-01-19 01:24:13 695

原创 Leetcode链表题目

文章目录链表基础707. 设计链表206. 反转链表203. 移除链表元素328. 奇偶链表234. 回文链表138. 复制带随机指针的链表链表排序148. 排序链表21. 合并两个有序链表147. 对链表进行插入排序链表双指针141. 环形链表I / 142. 环形链表II19. 删除链表的倒数第N个结点以下为Datawhale Leetcode开源学习思路总结,以下代码均为Leetcode代码,但不一定是最优解,仅供参考学习。链表基础707. 设计链表本题主要练习链表的增删查,在设计这个类时

2022-01-11 19:02:55 485

原创 存储器的层次结构

以下内容学习总结为Datawhale开源学习内容,详细链接可参考:https://github.com/datawhalechina/team-learning-program/tree/master/ComputerSystems在计算机系统模型中,CPU执行指令,而存储器系统为CPU存放指令和数据。实际上,存储器系统(memory system)是由不同容量、成本和访问时间的存储设备组成的层次结构。在这个层次结构中:CPU寄存器保存最常用的数据。靠近CPU的小的、 快速的高速缓存存储器作为相对慢速.

2022-01-02 00:09:37 5570

原创 优化程序性能

以下内容学习总结为Datawhale开源学习内容,详细链接可参考:https://github.com/datawhalechina/team-learning-program/tree/master/ComputerSystems写程序最主要的目标就是使它在所有可能的情况下都正确工作。一个运行得很快但是给出错误结果的程序没有任何用处。程序员必须写出清晰简洁的代码,这样做不仅是为了自己能够看懂代码,也是为了在检査代码和今后需要修改代码时,其他人能够读懂和理解代码。另一方面,在很多情况下,让程序运行得.

2021-12-28 19:37:36 771

原创 处理器体系结构

本节主要总结学习了Y86-64的指令流水。相比X86-64,Y86精简指令集便于学习。Y86-64有15个程序寄存器,相比X86-64,省略了%r15以简化指令的编码。每个程序寄存器存储一个64位的字。寄存器%rsp被入栈、出栈、调用和返回指令作为栈指针。除此之外寄存器没有固定的含义或固定值。有3个一位的条件码:ZF、SF和OF,他们保存着最近的算术或逻辑指令的所造成影响的有关信息。程序计数器PC存放当前正在执行的指令的地址。内存从概念上来说就是一个很大的字节数组,保存着程序和数据。程序状态的状态码表明程序

2021-12-28 00:03:50 1070

原创 程序的机器级表示

以下内容学习总结为Datawhale开源学习内容,详细链接可参考:https://github.com/datawhalechina/team-learning-program/tree/master/ComputerSystems在编译结束、汇编开始之前,会生成.s程序,这个程序中存放的是代码到汇编的汇编指令。然后再将.s文件通过汇编器生成.o二进制文件。我们来做个实验看看一个代码编程汇编是什么样子,然后二进制.o文件通过objdump反汇编后是什么样子(这里需要说明一下,objdump是一个反汇编.

2021-12-26 02:48:29 1539

原创 信息的表示和处理

以下内容学习总结及图片引用均为Datawhale开源学习内容,详细链接可参考:https://github.com/datawhalechina/team-learning-program/tree/master/ComputerSystems二进制&十进制&十六进制二进制转十六进制(分组转换)四位二进制可表示一位十六进制,那么对于一个0000 1011,转换后的结果为0x0B,只需要记住关键的十六进制和二进制对应关系即可,关系表如下:对某个二进制如0010 0000 0000.

2021-12-18 00:21:44 729

原创 计算机系统漫游

以下内容学习总结及图片引用均为Datawhale开源学习内容,详细链接可参考:https://github.com/datawhalechina/team-learning-program/tree/master/ComputerSystems编译过程分为四个阶段:预处理、编译、汇编、链接gcc -E hello.c -o hello.i //预处理gcc -S hello.i -o hello.s //编译gcc -c hello.s -o hello.o //汇编gcc he.

2021-12-14 00:14:36 1208

原创 使用Python实现KNN算法解决简单分类问题

使用Python实现KNN算法解决简单分类问题KNN分类KNN算法属于监督学习算法,它可以解决分类问题,也可以解决回归问题。对于一组带标签的数据,当我们使用KNN算法进行分类时,有两种分类方式。KNN的分类是有参照点的,它会参照周围的 KKK 个结点的标签,来划分适合这个加入点的标签,初始假设 K=kK = kK=k,第一种分类方式,根据最近的 kkk 个距离的点的标签比例划分。 我们将加入点周围最近的 kkk 个点找出来,加入点的标签类别就是它周围这 kkk 个点中占比最多的那类标签。第二种分类方

2021-01-15 21:57:07 2174

原创 感知器公式推导

感知器推导总结我们知道当 x∈Rx \in \mathbb{R}x∈R,若规定 yyy 的取值只能为 {1,−1}\{1, -1\}{1,−1},那么我们的决策边界函数为:f(x)=sign(ωTx+b)f(x) = sign(\omega^Tx+b)f(x)=sign(ωTx+b)其中上式的 signsignsign 函数用于判断选择最后 yyy 的取值。sign(a)={1,a⩾0−1,a⩽0sign(a) = \left\{\begin{array}{rr} 1, a\geqslant0\\-1

2021-01-11 18:45:57 579

原创 支持向量机(一)

支持向量机因为用 kkk 对 (ω,b)(\omega, b)(ω,b) 进行缩放后,即 (ω,b)(\omega, b)(ω,b) 变为 (kω,kω)(k\omega, k\omega)(kω,kω),样本 x(n)x^{(n)}x(n) 到超平面距离不发生变化,也就是系数的改变对直线并无任何实质影响,所以不管 kkk 是多少,距离 γ(n)\gamma^{(n)}γ(n) 都是不会改变的。那么现在对最特殊的,也是最近距离的支持向量 x0x_0x0​,我们要求出其最大距离,因为对于 ∣ωTx0+b∣|

2020-12-13 23:10:32 490 1

原创 Hyperledger fabricv.1.0.0两台机器搭建

搭建fabric-v1.0.0 1peer+1orderer网络前言考虑到虚拟机的复杂和服务器的方便又昂贵,最终选择两台服务器,模拟搭建一个orderer服务节点,一个peer节点,实现了简单的fabric平台记账功能。本文记录了Hyperledger Fabric从环境搭建,到跨机器间通过证书、公密钥等方式部署,实现了fabric自带样例example02中智能合约的记账功能,可通过如下方式...

2019-06-10 19:34:53 587

原创 C/C++的mem函数和strcpy函数的区别和应用

mem系列函数是面试的时候常考的知识点,我们需要熟练掌握这三个函数的原理和代码实现,要能准确无误的写出代码。memcpy、memset和memmove三个函数在使用过程中,均需包含以下头文件://在C中#include &lt;string.h&gt;//在C++中#include &lt;cstring&gt;memcpymemcpy函数是C/C++中的内存拷贝函数,它的功能是从...

2019-02-26 20:41:51 221

原创 C++构造函数为什么不能是虚函数

原因1:从存储空间角度这里你需要知道一个概念,那就是虚函数表vtbl,每一个拥有虚成员函数的类都有一个指向虚函数表的指针。对象通过虚函数表里存储的虚函数地址来调用虚函数。那虚函数表指针是什么时候初始化的呢?当然是构造函数。当我们通过new来创建一个对象的时候,第一步是申请需要的内存,第二步就是调用构造函数。试想,如果构造函数是虚函数,那必然需要通过vtbl来找到虚构造函数的入口地址,显然,我们申...

2019-02-26 17:46:20 1762

转载 函数对象、谓词概念、内建函数对象

1.函数对象的概念重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象,也叫仿函数(functor),其实就是重载"()"操作符,使得类对象可以像函数那样调用注意:函数对象(仿函数)是一个类,不是一个函数函数对象(仿函数)重载了"()"操作符使得它可以像函数一样调用#include &lt;iostream&gt;#includ...

2019-02-26 11:42:46 348

原创 重载、重写、重定义

重载(overload),重写(override,也称覆盖), 重定义(redefine,也称隐藏)(PS:第三个我不确定在英文中是否应该称为redefine,如有问题,留言告知,谢谢)一、重载(overload) 指函数名相同,但是它的参数表列个数或顺序,类型不同。但是不能靠返回类型来判断。 (1)相同的范围(在同一个作用域中) ; (2)函数名字相同; (3)参数不同; (4)virtual...

2019-02-24 00:42:54 893

常用latex公式表

该latex介绍了常用的latex公式,我们在编辑论文或者在markdown中编辑笔记,使用latex对数学公式进行编辑非常的方便,也是研究生需要掌握的工具。

2020-10-22

google三剑客之谷歌文件系统

this file introduce the famous file system - google file system. 这篇论文介绍了谷歌的三剑客之一 谷歌文件系统 是值得研读 学习 和借鉴的好论文 适合那些正在学习文件系统的同学来扩充知识

2020-10-22

Python3.6.5标准库文档(完整中文版).pdf

python3.6.5标准库文档整合 中文版 你可以查询各种python3.6版本的系统函数或者库函数 可以查找到对应函数的具体功能 同时点击目录超链接可跳转至python官方网站查看更详细的英文文档

2020-10-22

git通俗易懂教程

史上最浅显易懂的Git教程! 为什么要编写这个教程?因为我在学习Git的过程中,买过书,也在网上Google了一堆Git相关的文章和教程,但令人失望的是,这些教程不是难得令人发指,就是简单得一笔带过,或者,只支离破碎地介绍Git的某几个命令,还有直接从Git手册粘贴帮助文档的,总之,初学者很难找到一个由浅入深,学完后能立刻上手的Git教程。既然号称史上最浅显易懂的Git教程,那这个教程有什么让你怦然心动的特点呢?首先,本教程绝对面向初学者,没有接触过版本控制概念的读者也可以轻松入门,不必担心起步难度;其次,本教程实用性超强,边学边练,一点也不觉得枯燥。而且,你所学的Git命令是“充分且必要”的,掌握了这些东西,你就可以通过Git轻松地完成你的工作。

2019-02-24

rapidjson-zh

rapidjson库的使用手册 RapidJSON 是一个 C++ 的 JSON 解析器及生成器。它的灵感来自 RapidXml。 RapidJSON 小而全。它同时支持 SAX 和 DOM 风格的 API。SAX 解析器只有约 500 行代码。 RapidJSON 快。它的性能可与 strlen() 相比。可支持 SSE2/SSE4.2 加速。 RapidJSON 独立。它不依赖于 BOOST 等外部库。它甚至不依赖于 STL。 RapidJSON 对内存友好。在大部分 32/64 位机器上,每个 JSON 值只占 16 字节(除字符串外)。它 预设使用一个快速的内存分配器,令分析器

2019-02-24

Linux高性能服务器编程.pdf

tcp/ip协议详解,深入理解高性能服务器编程,io函数及io复用讲解,信号,定时器,io框架库libevent,多进程编程,多线程编程,进程池线程池等等的讲解

2017-08-28

侯捷C++面向对象编程(上下)

侯捷C++面向对象高级编程视频

2017-06-14

侯捷 C++内存管理

侯捷老师在博览网上的C++内存管理视频

2017-05-24

陈硕linux网络编程实战

陈硕老师在博览网上的网络编程实战视频,txt文件内附云盘地址及密码

2017-05-24

Linux命令手册

Linux命令大全,Linux命令及参数详细介绍。

2017-04-20

计算机网络-谢希仁第五版

讲述网络各层的特点及一些网络协议(比较详细,适合初学者)

2017-04-20

空空如也

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

TA关注的人

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