自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (3)
  • 收藏
  • 关注

原创 c++字符串拼接的问题

s = s + 'A’会产生一个新的对象,在返回结果给ss += 'A’应该是涉及到对象的引用,不需要产生额外的对象因此s = s + 'A’在每次拼接时都产生额外的对象占用内存,在字符串特别长的时候会导致超出内存限制的问题leetcode习题:面试题 01.06. 字符串压缩...

2020-09-07 22:58:40 284

原创 C++使用||运算符短路问题

||为逻辑或运算符,||在作运算时,如果前面的数是ture,则后面是否为false,整个表达式都为true,所以就不去执行后面的操作数。同理,&&前面的数为false时也不会执行后面的操作数

2020-09-02 16:17:50 600

原创 快速幂

代码:注:当 n = -2147483648时执行 n = -n会因越界而赋值出错,故定义变量n1class Solution {public: double myPow(double x, int n) { if (x == 0) return 0; double res = 1; long n1 = n; if (n < 0) { x = 1 / x; n1 = -...

2020-08-27 21:48:22 187

原创 C++ string和char*的区别

1、定义:string:string是C++标准库(STL)中的类型,它是定义的一个类,定义在 < string > 头文件中。里面包含了对字符串的各种常用操作,它较 char* 的优势是内容可以动态拓展,以及对字符串操作的方便快捷,用+号进行字符串的连接是最常用的操作。char*:char* 是一个指向字符的指针,是一个内置类型。可以指向一个字符,也可以表示字符数组的首地址(首字符的地址)。我们更多的时候是用的它的第二的功能,来表示一个字符串,功能与字符串数组char ch[n]一样,表示

2020-07-27 23:08:51 3961

原创 高等计算机网络与通信笔记(八)

BitTorrent:文件按块进行组织,大小256KBpeer加入torrent:首先要向tracker进行注册,并从tracker获取一些peer作为邻居加入连接下载文件时,可以一边下载别人的文件,一边上传一部份文件供别人下载是动态的,可以随时加入和离开下载完成随即离开,属于自私,下载优先级靠后,下载完成留在p2p,属于无私,下载优先级靠前可以周期性向邻居询问是否有自己在下载的文件块,优先下载稀有文件块同时只允许四个用户同时下载资源非结构化的p2p网络的关键技术:1.搜索效率,搜索速度(最关键)

2020-06-25 10:01:40 551

原创 高等计算机网络与通信笔记(七)

P2P:一种分散式的计算模型,与B/S、C/S相对应B/S、C/S是集中式的计算模型peer:安装特定应用软件的一个主机,可以是PC机,服务器,也可以是手机用途:1.解决C/S模式中的一些问题1)集中式服务,碰到热点内容容易让服务器瘫痪2)服务器必须一直在线,ip地址不能改变2.客户端上的资源总和远远超过服务器资源,但没有得到充分利用p2p解决充分利用客户端资源的问题...

2020-06-24 17:09:16 430

原创 高等计算机网络与通信笔记(六)

动态树构建方法:多播情况下,每一个路由器都可以维护一个以自己为根节点的最优路径树源不同,树的结构也不同RPF算法——基于不同的源构建不同的最优路径树的算法(逆向路径转播算法)1.当路由器收到包时,记录下两个信息,一是源地址,二是路由器的接口号2.若该接口在本路由器到源的最优路径树上,把包转发到除了接口I的所有接口3.否则丢弃该包RPF算法不需要路由器知道最短路径是什么,只需要知道接口I是否在最短路径上第一次发送包,构成一颗全局树然后进行剪枝,在简直过程中,当前路由器的下行路由器没有成员存在

2020-06-24 10:49:25 983

原创 高等计算机网络与通信笔记(五)

OSPF协议(开放最短路径优先协议):核心:链路状态算法建立ip套口,可以跳过tcp和udp通信OSPF协议中RIP不具备的特征:1.安全性提高,有认证过程2.允许有多条最优路径存在3.同一条链路,传送业务不一样,配置代价也可以不一样4.OSPF对多播支持比较好5.OSPF可以跨层,可以分区域EIGRP协议(增强内部网关路由协议):本质:距离矢量算法BGP协议:本质:路径矢量算法BGP功能:1.接收或过滤邻居发送的信息2.获得路径信息,缺省情况下把信息广告给邻居3.转发数据包

2020-06-23 18:43:13 545

原创 高等计算机网络与通信笔记(四)

NAT-Network address translation(网络地址变换):局域网内可以使用假IP地址,访问外部网络时通过网关将假IP地址转换成真IP地址NAT网关需要维护一个NAT表,用来存储真ip地址和端口号以及假ip地址和应用程序在主机上所对应的端口号NAT表配置方式:1.管理员手动配置(静态配置)2.协议配置(IGD协议)(UPGP——即插即用)DHCP协议:属于应用层协议,给主机自动配置地址,下层采用UDP协议步骤:1.主机进行广播请求2.DHCP服务器广播响应3.主机进

2020-06-19 20:53:23 503

原创 高等计算机网络与通信笔记(三)

TCP流量控制:

2020-06-11 15:31:44 373

原创 高等计算机网络与通信笔记(二)

应用层:· 域名系统(DNS)作用:1.域名解析转换,一般使用UDP 2.负载均衡· 应用层需要使用传输层提供的服务,需要建立套口· 应用层的通信模式:1.C/S 2.P2P 3.混合套口(socket):应用层和传输层之间的门,提供通信(TCP、UDP、IP)用户在写程序时,只能建立套口、关闭套口、向套口传输数据、从套口提取数据应用层对网络的服务质量要求(QoS Requirements)1.丢包率:支付应用等2.实时性:在线游戏等3.可用带宽:语音、视频等4.抖动:抖动就是包间隔的变

2020-06-04 01:21:38 519

原创 高等计算机网络与通信笔记(一)

课前思考问题:1.什么是TCP/IP:TCP/IP是所有Internet协议的总称,是一个集合的概念,不是指单独的TCP/IP协议2.网卡NIC在哪一层:在数据链路层3.传输过程中IP地址放在哪里(报文,段,数据报/包,帧,位):数据包/包4.什么是交换式路由器:既可以当路由器使用也可以当交换机使用的网络互联设备,普适性比较好5.AP是不是无线路由器:AP(无线访问接入点(WirelessAccessPoint)),AP不是无线路由器,是链路层的中继设备6.如何采集一个局域网内的所有信息:(1

2020-06-03 00:13:35 705

原创 冒泡排序

冒泡排序:冒泡排序重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。算法分析:时间复杂度:最好情况:O(n)最坏情况:O(n^2)平均情况:O(n^2)算法稳定性:稳定排序算法代码实现:cl

2020-05-27 20:50:55 154

原创 回文串

回文串:一个正读和反读都一样的字符串,如"level"判断一个字符串是否是回文串的方法:双指针,i指向字符串s头部,j指向字符串s尾部若s[i] == s[j],则i++,j–,直到i >= j则为回文串若s[i] != s[j],则不为回文串class Solution {public: bool isPalindrome(string str) { while (i < j) { if(str[i] != str[j]) {

2020-05-27 20:33:47 743 1

原创 拓扑排序

拓扑排序对一个有向无环图(DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边<u,v>∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称之为拓扑排序。leetcode实例:207.课程表方法一:BFS示例:n = 6, 先决条件表:[ [3, 0], [3, 1], [4, 1], [4, 2

2020-05-18 22:53:48 318

原创 随机打乱算法-Fisher–Yates shuffle 洗牌算法

Fisher–Yates shuffle 洗牌算法:是一个用来将一个有限集合生成一个随机排列的算法(数组随机排序)。这个算法生成的随机排列是等概率的,同时这个算法非常高效。算法步骤:1.写下从 1 到 N 的数字2.取一个从 1 到剩下的数字(包括这个数字)的随机数 k3.从低位开始,得到第 k 个数字(这个数字还没有被取出),把它写在独立的一个列表的最后一位4.重复第 2 步,直到所有的数字都被取出5.第 3 步写出的这个序列,现在就是原始数字的随机排列迭代思路:每次迭代时交换这个被取出

2020-05-16 12:09:06 2298

原创 前缀和笔记

前缀和:前缀和是一个数组的某项下标之前(包括此项元素)的所有数组元素的和。一维前缀和:sum[i] = sum[i-1] + a[i],这样就可以得到前i个数的和根据上述表达式我们可以以O(1)求出区间[i,j]的区间和sum[i,j] = b[j] - b[i-1]二维前缀和:二维前缀和数组里每一个位置都表示原数组当前index左上方的数字的和。leetcode前缀和题目:560. 和为K的子数组给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。示例

2020-05-15 10:53:15 215

原创 必学科目与必会数据结构与算法

必学科目:1.C++ primer2.数据结构与算法3.计算机网络4.计算机操作系统5.计算机组成原理6.计算机编译原理必掌握数据结构与算法:数据结构:1.线性表(1)数组 – 动态数组(2)栈(3)队列 – 普通队列 阻塞队列 并发队列 双端队列(4)链表 – 单链表 双向循环链表 双向链表 循环链表2.散列表(1)散列函数(2)冲突算法 – 链表法 开放寻址 其他(3)位图(4)动态扩容3.树(1)二叉树 – 二叉查找树 平衡二叉树 平衡二叉

2020-05-14 22:47:10 318

原创 刷题笔记

C++刷题笔记查找:1.顺序查找2.二分查找3.哈希查找算法:1.摩尔投票法2.KMP算法字符串:1.增删查改2.串比较链表:1.增删查改树:1.遍历(前、中、后、层次|递归非递归)...

2020-04-06 16:04:28 143

原创 leetcode刷题周记(五)

11. 盛最多水的容器我的解法:这种方法背后的思路在于,两线段之间形成的区域总是会受到其中较短那条长度的限制。此外,两线段距离越远,得到的面积就越大。我们在由线段长度构成的数组中使用两个指针,一个放在开始,一个置于末尾。此外,我们会使用变量 maxarea 来持续存储到目前为止所获得的最大面积。在每一步中,我们会找出指针所指向的两条线段形成的区域,更新 maxarea,并将指向较短线段...

2019-12-09 11:22:49 151

原创 leetcode刷题周记(四)

题目编号: 155、160、167、168、169、171、172155. 最小栈我的解法:同步双栈法,data栈存储数据,helper栈存储最小值初始化:将两个栈均初始为空入栈:data栈先入栈,若helper栈为空或当前入栈元素值小于helper栈顶元素(即当前入栈元素为最小值),则元素入helper栈,否则helper当前栈顶元素再次入helper栈出栈:若栈不空,则helper...

2019-11-25 20:22:16 138

原创 FP-growth算法以及代码实现

FP-growth算法以及代码实现FP-growth算法介绍FP-growth算法,它被用于挖掘频繁项集,它把数据集存储为一个叫FP树的数据结构里,这样可以更高效地发现频繁项集或频繁项对。FP树FP即Frequent Pattern,FP树看上去就是一棵前缀树,根节点是空集,结点上是单个元素,保存了它在数据集中的出现次数,出现次数越多的元素越接近根。此外,结点之间通过链接(link)相连,...

2019-11-25 19:01:46 4139 3

原创 leetcode刷题周记(三)

题目编号: 118、119、121、122、125、136118. 杨辉三角我的解法:两个数组,now用来记录当前行数据,pre用来记录上一行的数据首先对每一行设为全1,根据杨辉三角的特点,从第三行起,第二个元素开始,到倒数第二个元素为止,当前元素i等于上一行的i-1号元素和i号元素的和class Solution(object): def generate(self, numR...

2019-11-18 21:43:10 186

原创 决策树学习笔记

决策树**熵:**热力学中表征物质状态的参量之一,用符号S表示,其物理意义是体系混乱程度的度量**信息熵:**离散随机事件出现的概率。一个系统越是有序,信息熵越低;反之,越是杂乱无章,信息熵越高。信息熵可以被认为是系统有序化程度的度量...

2019-11-18 11:53:47 280

原创 leetcode刷题周记(二)

题目编号: 88、100、101、104、107、108108. 将有序数组转换为二叉搜索树我的解法:1.平衡二叉搜索树的特点是:每个节点的左右子树都高度差在1以内,每个节点左子树小于右子树。2.根据平衡二叉搜索树的特点,可以联想到,每个节点当做根节点的时候,左子树形成的数组一定比它小,右子树形成的数组一定比他大。因此,符合有序数组任意子数组中点的性质。3.结合树结构常用的递归思想,可以...

2019-11-11 16:58:04 175

原创 leetcode刷题周记(一)

题目编号: 26、27、28、35、38、53、58、66、67、69、70、8326.删除排序数组中的重复项:我的解法:设置一个偏移量变量Offset用来记录重复的元素个数,length记录不重复的元素。遍历一次数组,若当前元素与下一个元素相同,则偏移量Offset加一;若当前元素与下一个元素不同,则Offset不变,length加一;循环每执行一次当前元素向前移动Offset位,即可实现覆...

2019-11-05 16:39:44 186

原创 白板推导高斯分布笔记

高斯分布(Gaussian distribution):又名正态分布(Normal distribution),也称“常态分布”一维正态分布函数:卡尔曼滤波(Kalman filtering):一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。X(k)=A X(k-1)+B U(k)+W(k)极大似然估计方法(Maximum Likelihood Esti...

2019-10-29 17:09:20 288 1

原创 卷积神经网络CNN笔记

卷积神经网络CNN入门卷积神经网络:图片->若干次(Convolution->Max Polling->)->Flatten->Fully Connected FeedforwardConvolution:处理一些比较细小的模块,或者出现在图片不同位置的相同模块Max Pooling:去除一些不会影响图片特征的部分CNN-Convolution:假设66im...

2019-10-27 22:21:46 192

原创 主成分分析(PCA)算法实现iris数据集降维

主成分分析(PCA)算法1.PCA简介:PCA(Principal Component Analysis),主成分分析,是一种常用的数据降维算法。数据降维是指对高维度特征数据进行处理,保留重要的特征,去除噪声和不必要的特征,以达到提升 数据处理速度的目的。PCA的主要思想是将原有数据的n维特征映射到k维上(k<n),这k维是全新的正交特征,也被称作主成分。PCA的工作是从原空间中找出一...

2019-10-15 20:21:16 6125

原创 朴素贝叶斯实现文档分类

朴素贝叶斯实现文档分类网上与朴素贝叶斯相关的内容很多,本文仅作为作业的记录博客,重点记录在实现作业过程中遇到的问题和解决方法。作业要求:实验数据在bayes_datasets文件夹中。其中, train为训练数据集,包含hotel和travel两个中文文本集,文本为txt格式。hotel文本集中全部都是介绍酒店信息的文档,travel文本集中全部都是介绍景点信息的文档; Bayes...

2019-10-05 18:58:30 1316 4

原创 pycharm使用tensorflow时的一些问题

pycharm使用tensorflow时的一些问题本人使用pycharm创建tensorflow项目时遇到问题如下:在第一个项目project1中安装了tensorflow,在第二个项目project2中却提示未安装tensorflow经考虑,得出结论:在使用pycharm创建项目时,要选择已存在的解释器,而不要选择新建虚拟环境如图所示,在新建项目时选择New environment ...

2019-08-03 10:34:43 828

BayesProject.rar

1. 实验数据在bayes_datasets文件夹中。其中,  train为训练数据集,包含hotel和travel两个中文文本集,文本为txt格式。hotel文本集中全部都是介绍酒店信息的文档,travel文本集中全部都是介绍景点信息的文档;  Bayes_datasets/test为测试数据集,包含若干hotel类文档和travel类文档。 2. 用朴素贝叶斯算法对上述两类文档进行分类。要求输出测试数据集的文档分类结果,即每类文档的数量。

2020-05-23

DecisionTreeProject.rar

根据以下数据构建一颗决策树 对于待划分的数据集D,其 entroy(前)是一定的,但是划分之后的熵 entroy(后)是不定的,entroy(后)越小说明使用此特征划分得到的子集的不确定性越小(也就是纯度越高),因此 entroy(前) - entroy(后)差异越大,说明使用当前特征划分数据集D的话,其纯度上升的更快。

2019-11-18

朴素贝叶斯.zip

1. 实验数据在bayes_datasets文件夹中。其中,  train为训练数据集,包含hotel和travel两个中文文本集,文本为txt格式。hotel文本集中全部都是介绍酒店信息的文档,travel文本集中全部都是介绍景点信息的文档;  Bayes_datasets/test为测试数据集,包含若干hotel类文档和travel类文档。 2. 用朴素贝叶斯算法对上述两类文档进行分类。要求输出测试数据集的文档分类结果,即每类文档的数量。

2019-10-07

空空如也

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

TA关注的人

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