自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (2)
  • 收藏
  • 关注

原创 pandas中iloc,loc区别

pandas中iloc,loc区别iloc与loc两个方法所作的事情十分类似,都是对dataframe进行索引,区别在于iloc是对索引(数值下标)进行索引,而loc则是对表头进行索引。实例:import pandas as pddata = pd.DataFrame(np.random.random(size=(4,7)),columns=['a','b','c','d','e','f','g'])print(data.loc[:,['a','c']])print(data.iloc[:,[0

2021-08-20 21:02:03 465

原创 pandas dataframe实现多个不连续的索引

pandas dataframe实现多个不连续的索引dataframe中可以直接使用loc或iloc索引连续的一个区域,如下所示:import pandas as pddata = pd.DataFrame(np.random.random(size=(4,7)),columns=['a','b','c','d','e','f','g'])print(data.loc[:,['a','c']])print(data.iloc[:,[0,2,4]])二者的区别在这篇文章提到:但若对于不连续的多

2021-08-20 21:00:55 1472

原创 numpy矩阵合并中np.r_与np.c_区别

numpy矩阵合并中np.r_与np.c_区别numpy中的np.r_与np.c_都可以实现对矩阵的合并,不同在于一个沿着行方向,一个沿着列方向进行合并。import pandas as pddata1 = np.array([[1, 2, 3],[4,5,6]])data2 = np.array([[7,8,9]])data3 = np.array([10,11])print("data1: \n", data1)print("data2: \n", data2)print("data3:

2021-08-20 20:59:15 307 2

原创 off文件的简单使用与可视化

off文件的简单使用与可视化关于.off类型如何读取与可视化.off文件关于.off类型接触到.off类型的文件是由于modelnet40与modelnet10数据集下载之后的数据的基本格式是.off类型的:其中的每个类的数据已经被分为train和test两个文件夹,每个文件夹内包含了许多.off类型的文件。官方给的.off类型的文件中包含的两大主要的数据是顶点信息与构成片面的顶点:OFF顶点数 面片数 边数x y zx y z…顶点个数N v1 v2 v3 … vn顶点个数M v1

2021-08-18 15:53:57 3488

原创 tensorflow构建对抗样本遇到的坑----梯度问题

tensorflow构建对抗样本遇到的坑----梯度问题在利用梯度生成对抗样本的方式中,其核心思想为:Xpert=X+epsilon×sign(∇xL(X,Y)) X_{pert} = X + epsilon \times sign(\nabla_x L(X,Y)) Xpert​=X+epsilon×sign(∇x​L(X,Y))其中 epsilon为扰动系数(扰动浓度),一般值比较小;si...

2020-04-13 09:35:56 470

原创 c++中vector和string的erase用法

c++中vector和string的erase用法区别vector中的erase的参数是迭代器,可以从vector中删除某个位置的元素,或者是范围内的元素:iterator erase (const_iterator position);iterator erase (const_iterator first, const_iterator last);两个参数时,满足左闭右开,即删除的...

2020-04-01 12:31:58 996

原创 map按照value的值排序结果

map按照value的值排序输出map内部是由红黑树构成的(虽然不懂啥是红黑树),其顺序是固定的,即按照key的大小排序存放。因此直接进行排序是不现实的,故借助vector进行排序。其核心是,将map转为vector存储其内部的每组pair,然后对vector进行排序即可。代码如下:bool cmp(const pair<string,int> &a,const pai...

2020-03-21 22:00:25 284

原创 map的嵌套使用方法

map的嵌套使用方法vector可以理解为一种映射关系,给定指定的int值,都会返回与其对应的特定类型的值。类比vector,map也可以理解一种映射关系,只不过比起vector更加灵活,给定值不再局限于int型,可以任意指定。因此,从这个角度来理解map,对于算法题的使用可以十分灵活。对应的高维的map(嵌套map)也比较容易理解了。定义一个嵌套的map;map<int,map&...

2020-03-21 20:56:10 5360

原创 c++ 输入带有空格的字符并进行处理

利用getline(cin,string);可以用来输入带有空格的字符串,再利用stringstream类进行赋值处理。 vector<string> words; string in_str,word; getline(cin,in_str); stringstream ss(in_str); while(ss>>word) words.push_ba...

2020-03-17 09:59:33 600

原创 哈夫曼树的长度

哈夫曼树的长度哈夫曼树也称最优二叉树,最优指的是其带权路径和最小,而哈夫曼树的长度也指的是其带权路径和。一般而言,求其长度时,应当将其按照构造的方式进行构造之后,计算每个叶节点的值乘以权重之后的和。在这个图中,绿色的节点即叶子节点,故此树的长度WPL为WPL=1×3+2×3+3×2+3×2+4×2=29WPL = 1\times 3 + 2 \times 3 + 3\times 2+3...

2020-03-12 11:30:33 2821

原创 sstream 循环流入变量

c++ 直接用sstream进行循环做数据的流入流出时,总是会出现最后多循环一次的现象。如: stringstream ss1("11 12 12 21 32 52"); string str; while(ss1) { ss1>>str; cout<<str<<endl; }输出结果经过查实,stringstream会...

2020-02-29 18:07:15 199

原创 c++ 字符串中删除指定的字符

string没有直接的删除指定字符的方法,可以利用find和erase或者substr实现。string str;string target;int pos = str.find(target);n = target.size();str = str.erase(pos,n); 若包含多个特定字符,则循环删除即可。注意find的查找成功返回的是指定元素的第一个位置,失败则返回-1...

2020-02-29 17:48:40 11293

原创 c++ 字符串的输入方式

一般而言,可以用cin直接将输入流入某个变量中,输入以空格或者回车结尾。因此对于字符串而言,这样的结果是无法将空格流入变量之中。对应的,可以使用getline的方法,输入一行,将空格也当作变量,而非分隔符。getline(cin,str);对于多行的输入,也可类似的实现: while(getline(cin,str[num])) { num++; }上述循环中,其返回值是ci...

2020-02-29 16:19:07 578

原创 c++ STL stack 快速上手

STL中需要用到stack库实现对栈的支持。栈的构造,一般只用来构造空栈。#include<stack>stack<int> s;入栈与出栈: s.push(2); cout<<s.top()<<endl; s.push(3); cout<<s.top()<<endl; cout<<"size ...

2020-02-27 11:57:57 115

原创 数组中的元素个数

数组的元素个数可以用c的sizeof函数实现l = sizeof(a)/sizeof(a[0]);其最后位置的元素自然为a[sizeof(a)/sizeof(a[0])-1];做一个对比,vector的元素个数可以用sizevector<int> number(17);cout<<number.size();...

2020-02-26 17:11:14 2430

原创 vector快速上手

初始化方法: vector<int> v1; vector<int> v2(4); //大小为4,值都为0 vector<int> v3(4,6); //大小为4,值都为6 int b[7]={1,2,3,4,5,6,7}; vector<int> v4(b,b+7); //用数组来初始化重置大小: for(i=0;i&lt...

2020-02-19 18:09:40 107

原创 C++ STL string 中erase 与 substr 用法

可以将erase理解为删除某个指针所指向的值,传入的是个迭代器(指针),删除字符串中此指针所指字符。 string s = "987654321"; s.erase(s.begin()+2); cout<<s<<endl;输出:98654321或者删除字符串某个位置开始几个字符: string s = "987654321"; s.erase(2,3);...

2020-02-19 11:51:09 1553

原创 c++ stl string的基本知识

string 中的begin 和end可以理解为指向头和尾的指针,因此可以用*s.begin()检索第一个位置的元素。 string s = "54321"; cout<<*s.begin();输出:5请按任意键继续. . .对比没有*的情况: string s = "54321"; cout<<s.begin();输出54321请按任意键继续. ....

2020-02-19 10:29:02 264

原创 c++ substr的用法

假设:string s = “0123456789”;string sub1 = s.substr(5); //只有一个数字5表示从下标为5开始一直到结尾:sub1 = “56789”string sub2 = s.substr(5, 3); //从下标为5开始截取长度为3位:sub2 = “567”...

2020-01-29 12:10:56 413

原创 计算机组成整理(第一章)

计算机系统概论计算机的发展历程硬件的发展时代计算机发展软件发展电子管时代数据处理机机器语言晶体管时代工业控制机高级语言、OS有了雏形中小规模集成电路时代小型计算机分时OS出现超大规模集成电路时代微型计算机微处理器出现,并行、高速缓存出现元件的更新换代摩尔定律、半导体存储器的快速发展以及微处理器的发展。计算机的分类电子模...

2019-04-22 21:59:58 1388

原创 简单动态规划的实现(Leetcode 338. 比特位计数)

背景想到五月就是蓝桥杯决赛了,而自己还是什么都不会的渣渣,感觉还是得花点时间找找代码感觉。听人说蓝桥杯基本上动态规划加贪心算法基本就够省二的水平了,因此还是想从动规入手。题目描述题目来源于Leetcode 338.比特位计数。官方描述给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。示例 1:输入: 2...

2019-04-05 19:06:41 211

原创 DFS新手入门(第十届蓝桥杯E题)

DFS新手入门(第十届蓝桥杯E题)前言人生第一篇博客,尝试写博客是因为发现需要在考研路上给自己一些激励,同时也是为了能够记载一些计算机相关的知识,希望能够在考研路上对自己有所帮助。背景第十届蓝桥杯Java B组随缘得了省一,在考场上看到E题迷宫就知道因该用DFS就能解,但奈何于平时眼高手低,想了半天也没能写出来,同时也说明自己算法的基础功很差,这使我只能从简单入手,重新学习DFS。官方题...

2019-03-31 20:17:03 425 1

达内训练营linux基本操作培训

是达内训练营的快速培训的内容,共四天的内容,每天包括上午下午,共八个文件,培训内容是linux的基础

2021-08-21

计算机网络复习.pdf

此文档为本人在考研复试备考中,关于计算机网络复习所整理的知识点。部分知识点结合了一些面试题目进行了拓展。

2020-04-23

空空如也

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

TA关注的人

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