- 博客(72)
- 收藏
- 关注
原创 define、const 和 static 的区别
文章目录define、conststaticdefine、const在 C++ 中,const 和 define 都可以用来定义常量。但是这二者之间有很大的区别:define 的作用用 define 定义的常量是没有 类型 的,编译器只是把所定义的常量值和这个常量的名字联系起来,编译器在编译的过程中只是把 常量名替换成对应的常量值,所有用到的地方都拷贝替换。const 作用使用 const 定义的常量是 有类型的,这个值存放在了 内存的静态区域中。具体来说,二者具有以下这些方面的区
2020-10-13 19:05:21 627
原创 Mac Catalina 下 gdb codesign问题解决
在 macOS 上,无法直接使用 gdb 进行 debug。这是因为 Darwin 内核在你没有特殊权限的情况下,不允许调试其它进程。调试某个进程,意味着你对这个进程有完全的控制权限,所以为了防止被恶意利用,它是默认禁止的。允许 gdb 控制其它进程最好的方法就是用系统信任的证书对它进行签名。但是目前我所使用的 macOS 版本是 macOS Cataline,在网上大多数方案中都缺少某些步骤,最终才能运行,这里作出说明。文章目录传统步骤创建证书对 gdb 签名新版系统需要做出的变化传统步骤创建证
2020-09-27 10:17:12 612
原创 k8s 辨析 port、NodePort、targetPort、containerPort 区别
刚接触 k8s 涉及到端口到内容较多,容易混淆,这里整理如下:文章目录nodePortporttargetPortcontainerPort参考文章nodePortnodePort 提供了集群外部客户端访问 Service 的一种方式,nodePort 提供了集群外部客户端访问 Service 的端口,通过 nodeIP:nodePort 提供了外部流量访问k8s集群中service的入口。比如外部用户要访问k8s集群中的一个Web应用,那么我们可以配置对应service的type=NodePort
2020-08-22 13:51:52 3432
原创 centos7.8 安装部署 k8s 集群
centos7.8 安装部署 k8s 集群文章目录centos7.8 安装部署 k8s 集群环境说明Docker 安装k8s 安装准备工作Master 节点安装 k8s版本查看安装 kubelet,kubeadm,kubectl下载镜像初始化 Master启动测试参考文章刚接触 k8s,配置环境折腾了一天,感觉有很多坑,网上很多教程已经不靠谱了,自己记录下安装部署 k8s 的全过程。环境说明softwareversionOSCentOS Linux release 7.8.20
2020-08-21 19:49:29 1198
原创 GFS 论文阅读笔记
The Google File System文章目录Abstract1 Introduction2 Design Overview2.1 Assumptions2.2 Interface2.3 Architecture2.4 Single Master2.5 Chunk Size2.6 Metadata2.6.1 In-Memory Data Structures2.6.2 Chunk Locations2.6.3 Operation Log2.7 Consistency Model2.7.1 Guara
2020-06-27 20:03:05 1329 1
原创 MapReduce 论文阅读笔记
文章目录AbstractIntroduction2 Programming Model2.1 Example2.2 Types2.3 More Examples3 Implementation3.1 Execution Overview3.2 Master Data Structures3.3 Fault ToleranceWorker Failure (工作节点故障)Master Failure(主节点故障)Semantics in the Presence of Failures(语义可能存在的故障)3
2020-06-24 18:53:15 1043 1
原创 使用Typora+Picgo+qiniu+坚果云打造自动同步文件,上传图片至图床的笔记工具
本文旨在记录下使用 typora 以及一些自动工具打造一个适合自己的 Markdown 笔记工具的过程。本机为 mac,Windows在设置上可能会有一些出入。有问题可以查看官方文档。使用到的工具:Typora , Markdown编辑器Picgo,本地图床管理工具NutStore,坚果云自动同步工具Qiuniu,七牛对象存储图床过程:下载安装 Typora下载坚果云,设...
2020-05-05 11:17:05 909
原创 【PTA】1013 Battle Over Cities (图的dfs+统计连通分支数目)
本题考点:统计图的强连通分支数目题目:It is vitally important to have all the cities connected by highways in a war. If a city is occupied by the enemy, all the highways from/toward that city are closed. We must k...
2020-04-17 12:24:04 209
原创 Mac下C/C++在vscode debug 配置(踩坑)
使用 Mac,开始写算法题,在 mac 上找不到什么比较好的 debug 工具, lldb 虽然可以直接 debug,但是还是没有 vscode 香。本来开始按照官方教程 来做,但是使用无法从外界读取到输入,如果在程序里指定好值可以 debug,但是无法从控制台或者是文件输入读取到值。这是 Mac Catalina 下好像才会出现的问题,在其他平台好像没出现。搜了很多资料,最后在这个 iss...
2020-04-16 17:21:09 1003
原创 PTA 6-1 单链表逆转
本题是一个非常经典的题目:单链表逆转。这是链表结点的定义:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};typedef PtrToNode List; /* 定义单链表类型 */先给出实现的代...
2020-04-14 22:23:45 291
原创 【网络安全】——服务端安全(注入攻击、认证与会话管理和访问控制、访问控制、加密算法与随机数、Web框架安全、应用层拒绝服务攻击DDOS)
服务端常见安全问题,包括注入攻击(SQL注入)、认证与会话管理和访问控制、访问控制、加密算法与随机数、Web框架安全、应用层拒绝服务攻击DDOS、Web Server安全等方面。
2020-04-12 13:34:05 1093
原创 【网络安全】——客户端安全(浏览器安全、XSS、CSRF、Clickjacking)
学习总结客户端安全的相关要素,包括浏览器安全,跨站脚本攻击(XSS),跨站点请求伪造(CSRF),点击劫持(Clickjacking),HTML5安全等。
2020-04-12 13:28:12 617
原创 PTA 7-47 打印选课学生名单
本题考点:排序的应用假设全校有最多40000名学生和最多2500门课程。现给出每个学生的选课清单,要求输出每门课的选课学生名单。输入格式:输入的第一行是两个正整数:N(≤40000),为全校学生总数;K(≤2500),为总课程数。此后N行,每行包括一个学生姓名(3个大写英文字母+1位数字)、一个正整数C(≤20)代表该生所选的课程门数、随后是C个课程编号。简单起见,课程从1到K编号。...
2020-04-12 11:04:45 801 2
原创 PTA 7-45 航空公司VIP客户查询(map应用)
本题考点:map 的应用不少航空公司都会提供优惠的会员服务,当某顾客飞行里程累积达到一定数量后,可以使用里程积分直接兑换奖励机票或奖励升舱等服务。现给定某航空公司全体会员的飞行记录,要求实现根据身份证号码快速查询会员里程积分的功能。输入格式:输入首先给出两个正整数N(≤105)和K(≤500)。其中K是最低里程,即为照顾乘坐短程航班的会员,航空公司还会将航程低于K公里的航班也按K公里...
2020-04-11 21:30:43 298
原创 PTA 7-44 基于词频的文件相似度(字符串处理+set容器)
本题考点:字符串处理set 容器使用实现一种简单原始的文件相似度计算,即以两文件的公共词汇占总词汇的比例来定义相似度。为简化问题,这里不考虑中文(因为分词太难了),只考虑长度不小于3、且不超过10的英文单词,长度超过10的只考虑前10个字母。输入格式:输入首先给出正整数N(≤100),为文件总数。随后按以下格式给出每个文件的内容:首先给出文件正文,最后在一行中只给出一个字符#,表示...
2020-04-11 20:53:25 421
原创 PTA 7-43 字符串关键字的散列映射(手写平方探测法)
考点:* 字符串的哈希函数* 哈希冲突时采用平方探测法> 给定一系列由大写英文字母组成的字符串关键字和素数P,用移位法定义的散列函数H(Key)将关键字Key中的最后3个字符映射为整数,每个字符占5位;再用除留余数法将整数映射到长度为P的散列表中。例如将字符串AZDEG插入长度为1009的散列表中,我们首先将26个大写英文字母顺序映射到整数0~25;再通过移位将其映射为3×322...
2020-04-11 12:13:46 357
原创 PTA 7-42 整型关键字的散列映射(手写哈希表的线性探测法)
本题考点:整型哈希表的线性探测法给定一系列整型关键字和素数P,用除留余数法定义的散列函数将关键字映射到长度为P的散列表中。用线性探测法解决冲突。输入格式:输入第一行首先给出两个正整数N(≤1000)和P(≥N的最小素数),分别为待插入的关键字总数、以及散列表的长度。第二行给出N个整型关键字。数字间以空格分隔。输出格式:在一行内输出每个整型关键字在散列表中的位置。数字间以空格分隔,...
2020-04-11 10:55:42 388
原创 PTA 7-41 PTA排名汇总(多阶段排序应用)
本题考点:多个阶段排序的组合计算机程序设计能力考试(Programming Ability Test,简称PAT)旨在通过统一组织的在线考试及自动评测方法客观地评判考生的算法设计与程序设计实现能力,科学的评价计算机程序设计人才,为企业选拔人才提供参考标准(网址http://www.patest.cn)。每次考试会在若干个不同的考点同时举行,每个考点用局域网,产生本考点的成绩。考试结束后...
2020-04-11 10:35:26 1183
原创 PTA 7-40 奥运排行榜
每年奥运会各大媒体都会公布一个排行榜,但是细心的读者发现,不同国家的排行榜略有不同。比如中国金牌总数列第一的时候,中国媒体就公布“金牌榜”;而美国的奖牌总数第一,于是美国媒体就公布“奖牌榜”。如果人口少的国家公布一个“国民人均奖牌榜”,说不定非洲的国家会成为榜魁…… 现在就请你写一个程序,对每个前来咨询的国家按照对其最有利的方式计算它的排名。输入格式:输入的第一行给出两个正整数N和M(≤22...
2020-04-10 20:41:03 765
原创 PAT 7-39 魔法优惠券(优先队列的使用)
本题考点:优先队列的使用在火星上有个魔法商店,提供魔法优惠券。每个优惠劵上印有一个整数面值K,表示若你在购买某商品时使用这张优惠劵,可以得到K倍该商品价值的回报!该商店还免费赠送一些有价值的商品,但是如果你在领取免费赠品的时候使用面值为正的优惠劵,则必须倒贴给商店K倍该商品价值的金额…… 但是不要紧,还有面值为负的优惠劵可以用!(真是神奇的火星)例如,给定一组优惠劵,面值分别为1、2、...
2020-04-10 13:21:27 361
原创 PTA 7-38 寻找大富翁(优先队列的使用)
本题考点:优先队列的使用胡润研究院的调查显示,截至2017年底,中国个人资产超过1亿元的高净值人群达15万人。假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁。学会使用优先队列,不仅要会大顶堆(优先队列),也要会小顶堆的使用:priority_queue<int, vector<int>, greater<int>> pq;完整代码...
2020-04-10 13:12:31 226
原创 PTA 7-37 模拟EXCEL排序(自定义排序函数)
本题考点:自定义排序函数Excel可以对一组纪录按任意指定列排序。现请编写程序实现类似功能。输入格式:输入的第一行包含两个正整数N(≤105) 和C,其中N是纪录的条数,C是指定排序的列号。之后有 N行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,保证没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩([0, 100]内的整数)组成,相邻属性用1个空格隔开。输出...
2020-04-10 13:09:30 378
原创 PTA 7-36 社交网络图中结点的“重要性”计算(图的BFS)
本题考点:图的BFS在社交网络中,个人或单位(结点)之间通过某些关系(边)联系起来。他们受到这些关系的影响,这种影响可以理解为网络中相互连接的结点之间蔓延的一种相互作用,可以增强也可以减弱。而结点根据其所处的位置不同,其在网络中体现的重要性也不尽相同。“紧密度中心性”是用来衡量一个结点到达其它结点的“快慢”的指标,即一个有较高中心性的结点比有较低中心性的结点能够更快地(平均意义下)到达...
2020-04-10 11:40:18 800
原创 PTA 7-35 城市间紧急救援(Dijkstra+DFS)
本题考点:多标尺的Dijkstra作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式:输入第一行给出4个正整数N、M、S、D,其中N(2...
2020-04-10 10:15:22 1167
原创 【线性代数的本质】特征值和特征向量的本质
特征值和特征向量一直是我最疑惑的一个地方,虽然知道如何计算,但是一直不懂他所代表的意义,今天就来揭开他神秘的面纱!特征值和特征向量我们先来看一个线性变换的矩阵,并且考虑他所张成的空间,也就是过原点和向量尖端的直线:在这个变换中,绝大部分的向量都已经离开了它们张成的空间,但是某些特殊向量的确留在它们张成的空间里,意味着矩阵对他的作用只是拉伸或者压缩而已,如同一个标量。如果一个向量留在它们张...
2020-04-09 16:50:02 2107 1
原创 【线性代数的本质】以线性变换的眼光看待叉积
叉积文章目录叉积的标准解释从线性变换看待叉积叉积的标准解释如果我们有两个向量,我们以这两个向量为边做一个平行四边形,这个平行四边形的面积就是这两个向量叉积的结果。但是我们还是需要考虑定向问题,其实就是 i 和 j 向量的顺序,如果 j 在 i 的逆时针方向,那么就称为正的,否则为负的。然后我们就可以计算出这个叉积的结果:严格意义意义上说,以下三维向量才是叉积的定义(这里写成了...
2020-04-09 16:04:28 279
原创 PTA 7-33 地下迷宫探索 (图的DFS)
本题考点:图的DFS遍历7-33 地下迷宫探索 (30分)地道战是在抗日战争时期,在华北平原上抗日军民利用地道打击日本侵略者的作战方式。地道网是房连房、街连街、村连村的地下工事,如下图所示。我们在回顾前辈们艰苦卓绝的战争生活的同时,真心钦佩他们的聪明才智。在现在和平发展的年代,对多数人来说,探索地下通道或许只是一种娱乐或者益智的游戏。本实验案例以探索地下通道迷宫作为内容。假设有一...
2020-04-09 12:40:38 506
原创 PTA 7-32 哥尼斯堡的“七桥问题”(欧拉回路)
本题考查点:欧拉回路文章目录欧拉图与欧拉回路哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示。可否走过这样的七座桥,而且每桥只走过一次?瑞士数学家欧拉(Leonhard Euler,1707—1783)最终解决了这个问题,并由此创立了拓扑学。这个问题如今可以描述为判断欧拉回路是否存在的问题。欧拉回路是指不令笔离开纸面,可画过图中每条边仅一次,且可以...
2020-04-09 11:26:06 1453
原创 PTA 7-31 笛卡尔树(BST+Heap)
本题考点:二叉搜索树和堆性质的应用笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字满足优先队列(不妨设为最小堆)的顺序要求,即该结点的K2值比其子树中所有结点的K2值小。给定一棵二叉树,请判断该树是否笛卡尔树。输入格式输入首先给出正整数N(≤1000),为...
2020-04-09 10:44:21 178
原创 【线性代数的本质】点积与对偶性
线性代数的本质,源视频 https://www.bilibili.com/video/BV1ys411472E点积与对偶性什么是点积?计算层面对于两个维数相同的向量,求它们的点积,就是将相应坐标配对,求出每一对坐标的乘积然后相加。几何角度这是通常意义上的点积,下面我们将来理解集合上的意义,就是将一个向量投影到另外一个向量的方向上,然后乘以另外一个向量的长度,就得到了点积。...
2020-04-08 20:43:23 470
原创 【线性代数的本质】行列式、逆矩阵、列空间、秩、零空间
线性代数的本质,源视频 https://www.bilibili.com/video/BV1ys411472E文章目录行列式逆矩阵秩列空间与零空间非方阵行列式我们已经知道了矩阵的线性变换的意义,我们这节来学习行列式。我们现在想象一些线性变换,有一些将空间向外拉伸,有些将空间向内挤压。我们需要测量一个区域被拉伸或者被挤压的程度将会很有用,更具体一点,也就是测量一个给定的区域面积增大...
2020-04-08 18:21:01 661
原创 【线性代数的本质】矩阵、线性变换、矩阵乘法与线性变换复合
线性代数的本质,源视频 https://www.bilibili.com/video/BV1ys411472E文章目录矩阵和线性变换矩阵乘法与复合变换Unfortunately, no one can be told what the Matrix is. You have to see it for your self.------ Morpheus矩阵是什么?矩阵(Matri...
2020-04-08 10:29:09 496
原创 【线性代数的本质】向量、线性变换、张成的空间与基
线性代数的本质,源视频 bilibili自己一直觉得线性代数没有真的弄懂,对于线性代数的学习基本上都是靠记忆而不是理解,为了认真学习线性代数,弄清线性代数背后的本质,特此学习,做下笔记。文章目录什么是向量线性变换、张成的空间与基线性变换向量空间多个向量的线性相关什么是向量线性代数中最基础、最根源的组成部分就是向量,所以对于向量是什么我们需要达成共识然后继续前进。向量,对于不同领域的人...
2020-04-07 23:36:42 898
原创 PTA 7-29 修理牧场(Huffman树)
数据结构和代码仓库本题考点:Huffman 树农夫要修理牧场的一段栅栏,他测量了栅栏,发现需要N块木头,每块木头长度为整数Li 个长度单位,于是他购买了一条很长的、能锯成N块的木头,即该木头的长度是Li的总和。但是农夫自己没有锯子,请人锯木的酬金跟这段木头的长度成正比。为简单起见,不妨就设酬金等于所锯木头的长度。例如,要将长度为20的木头锯成长度为8、7和5的三段,第一次锯...
2020-04-05 20:43:26 418
原创 PTA 7-28 搜索树判断(镜像二叉搜索树的后序遍历)
算法源代码在 Veeupup Github考点:二叉搜索树遍历方式和性质运用对于二叉搜索树,我们规定任一结点的左子树仅包含严格小于该结点的键值,而其右子树包含大于或等于该结点的键值。如果我们交换每个节点的左子树和右子树,得到的树叫做镜像二叉搜索树。现在我们给出一个整数键值序列,请编写程序判断该序列是否为某棵二叉搜索树或某镜像二叉搜索树的前序遍历序列,如果是,则输出对应二叉树的后序...
2020-04-04 17:59:45 378 1
原创 PTA 7-26 Windows消息队列(小顶堆+输入优化)
本题考点:优先队列(小顶堆) + 输入输出优化消息队列是Windows系统的基础。对于每个进程,系统维护一个消息队列。如果在进程中有特定事件发生,如点击鼠标、文字改变等,系统将把这个消息加到队列当中。同时,如果队列不是空的,这一进程循环地从队列中按照优先级获取消息。请注意优先级值低意味着优先级高。请编辑程序模拟消息队列,将消息加到队列中以及从队列中获取消息。输入格式:输入首先给出正整...
2020-04-04 15:22:19 302
原创 PTA 7-23 还原二叉树(前序+中序还原二叉树)
知识点:根据前序遍历和中序遍历还原二叉树给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。根据二叉树的性质,如果我们只给出二叉树的一种遍历方式的结果,不能完全确定一颗二叉树,这时的二叉树可能具有多种形态。但是当我们给出一颗二叉树的两种不同遍历方式的时候,就可以完全确定一颗二叉树。这里以前序遍历和中序遍历为例。假如我们给出两棵二叉树的前中序遍历分别为前序遍历:...
2020-04-04 13:49:19 1031
原创 PTA-7-22 堆栈模拟队列
本题考点:采用堆栈模拟队列文章目录解题思路情况分析代码实现设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q。所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数:int IsFull(Stack S):判断堆栈S是否已满,返回1或0;int IsEmpty (Stack S ):判断堆栈S是否为空,返回1或0;void Push(Stack S, ElementTyp...
2020-04-03 20:46:28 647
原创 PTA-7-21 求前缀表达式的值(逆波兰表达式递归求解)
本题考点:前缀表达式递归求值算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。前缀表达式指二元运算符位于两个运算数之前,例如2+3*(7-4)+8/4的前缀表达式是:+ + 2 * 3 - 7 4 / 8 4。请设计程序计算前缀表达式的结果值。我们先来了解一下前缀表达式:前缀表达式也称逆波兰表达式,一个逆波兰表达式的组成如下:表达式 = 符号(+,-,*,/) + 数字1(或...
2020-04-03 11:50:00 1211
原创 PTA-7-20 表达式转换(中缀转后缀,带括号,负数,小数转换)
本题考点:中缀表达式转后缀表达式。难点:带有小数的数字数字可能带有正负号题目描述:算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。本题的测试点如下:输入输出说明2+3*(7-4)+8/42 3 7 4 - * + 8 4 / +正常测试...
2020-04-02 21:31:32 3521 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人