自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (5)
  • 收藏
  • 关注

原创 xlrd, xlwt, Python 修改

Python中一般使用xlrd(excel read)来读取Excel文件,使用xlwt(excel write)来生成Excel文件(可以控制Excel中单元格的格式),用xlrd读 取excel是不能对其进行操作的:xlrd.open_workbook()方法返回xlrd.Book类型,是只读的,不能对其进行操作。而 xlwt.Workbook()返回的xlwt.Workbook类型的,...

2018-12-28 10:28:36 657

原创 二叉树,递归,非递归遍历

struct node{ int data; node* left; node* right; int tag = 1;}void reNode(node* root){ if(root == NULL) return; //cout << root->data << endl; //递归前序遍历 reNode(root->left)...

2018-08-15 09:57:46 144

原创 n个数中的前k个小数

#include<iostream>#include<algorithm>using namespace std;bool compare(int a, int b);int main(){ int n, k; cin >> n >> k; if(n <= 0 || n < k)...

2018-07-10 16:46:38 379

原创 输出字符串中最长的数字字符串

输入描述:输入一个字符串。输出描述:输出字符串中最长的数字字符串。输入例子:abcd12345ed125ss123058789输出例子:输出123058789#include<iostream>#include<string>using namespace std;int main(){ string str; cin >&gt...

2018-07-10 10:11:56 1203

原创 计算机网络相关基础

报文,需要发送的整块数据报文交换,整个报文先传导向临界点,全部存储下来后查找转发表,转发到下一个结点分组,报文分成等长的数据段,然后加上必要的首部,即为分组分组交换,单个分组传送到相邻结点,存储下来后查找转发表,转发下一个结点实体:任何可以发送或接收信息的硬件或软件进程。协议:控制两个对等实体(或多个)进行通信的规则的集合。服务:在协议的控制下,两个对等实体间的通信使得本层能够向上一层供服务。下面...

2018-06-07 20:10:12 145

原创 最短路径算法,Dijkstra, Floyd 算法

Floyd方法真是简洁,时间复杂度是O(n^3),是所有顶点之间的最短路径Dijkstra求的是源点到其它点之间的最短路径,如果要求所有点之间的最短路径,时间复杂度还是O(n^3)const int maxint = 65535;const int maxnum = 10;int dist[maxnum];int prev[maxnum];int a[maxnum][maxnum];v...

2018-05-31 20:26:23 425

原创 归并排序,递归实现和迭代实现

归并排序:时间复杂度O(nlogn)空间复杂度O(n+logn)比较占用内存,但却效率高且稳定的方法#define MAX_SIZE 55int num[] = {2,3,4,5,3,2,4,52,2};int len = 9;int* tr2 = new int[MAX_SIZE];void mergeSort(int num, int len)// 递归实现版本...

2018-05-24 21:37:47 421

原创 C++, 堆排序

堆排序,是一种不稳定的排序方法,包含两个过程,构建堆和调整堆构建堆的过程,要从下往上,从右往左;从有孩子的左节点开始往上调整。构建完成后,交换堆顶元素和堆尾元素,然后对剩余元素重新调整成堆时间复杂度:整个堆的构建为O(n)重建堆的时间复杂度为O(nlogn)总体来说,堆排序的时间复杂度为O(nlogn)int num[7] = {2, 3, 4, 5, 2, 3, 1};int length =...

2018-05-24 10:58:40 122

原创 Kruskal 最小生成树 并查集

typedef struct { int vexNum; int edgeNum; int arc[N][M];}myGraph;typedef struct { int data; int begin; int end;}edges;void kruskal(myGraph t)// 其实是有两个连通的边集合,就是按照规定一个个连通支合并的过程,最后只剩一个连通支/...

2018-05-22 11:35:43 220

原创 最小生成树 Prim

#define max INFINITYtypedef struct myGraph{ int num; int arc[m][n];}Graph;void Prim(Graph t)//Prim //把节点划分为两个集合,标记集合和未标记集合//维持一个记录表,里面是所有未标记集合到已标记集合的边的相应最小权重,lowerCost//每次从记录表中选取从小的权重,把此边的未标...

2018-05-21 22:29:48 123

原创 斐波那契查找

斐波那契查找:大于n且最接近n的数值, n >= f[k]-1 && n < f[k+1]-1 middle = f[k] - 1;问题1. 为什么要把数组长度扩充为 F[k]-1,而不是 F[k] 或者 F[k+1]这是为了能够争取的计算 mid 值,F[k]-1 = (F[k-1] + F[k-2]) - 1    = (F[k-1] - 1) + 1 + (F[k...

2018-05-21 20:33:33 116

原创 KMP算法,next数组详解

next数组(a) - 除当前字符外,最长相同前缀后缀最大长度值(b) - 最大对称长度的前缀后缀 12345678匹配字符串abcdabcxnext数组(a)01111234最大长度值(b)00001230变化最大长度值(c)-10000123next数组的求法:j = 1时, next[j] = 0next[j] = max{k| 1<k<j, P(1)...P(k-1) == P...

2018-05-17 15:44:06 261

原创 指针函数,指针数组,指针常量

指针数组,内部元素全是指针的一个数组int *a[5]; char *arr[4] = {"hello", "world", "shannxi", "xian"};//arr是一个指针数组,它有四个元素,每个元素是一个char *类型的指针,//这些指针存放着其对应字符串的首地址。数组指针,指向某种类型数组的一个指针int (*a)[5];指针函数,带指针的函数,返回类型是某一类型的...

2018-05-11 11:35:46 149

原创 Python str.split 和 re.split(), 多个分隔符情况

split适用于单个分隔符当需要多个分隔时,可以逐次使用split()text = "abc def!"sg = text.split()sg[1] = sg[1].split('!')[0]print(sg) #['abc', 'def']这种情况下,使用re.split()较为方便re.split(pattern, string, maxsplit=0) #原型re.split()的使用...

2018-05-09 15:35:27 26406 1

原创 python list的append 函数

x = [1, 2, 3]y = []y.append(x) x.append(9)y.append(x)print(y)期望结果是 [[1, 2, 3], [1, 2, 3, 9]]实际的输出结果是 [[1, 2, 3, 9], [1, 2, 3, 9]]出现这种的原因是:当list类型的对象进行append操作时,实际上追加的是该对象的引用。 扩展的时候,并没有进行拷贝,仅仅是作为了...

2018-05-08 21:34:38 6380

原创 sizeof操作符, strlen函数,字符数组作为参数

strlen 是计算字符串的长度,从内存中的某个位置开始扫描,遇到‘\0’结束,sizeof 计算的是占用内存的大小一个指针占得内存4个字节,所以 sizeof(m)/sizeof(int) 结果是1strlen是库函数,需要包含"string.h"头文件sizeof是操作符数组做sizeof的参数时不退化,传递给strlen就会退化为指针。数组作为参数传递给函数时,传的是指针而不是数...

2018-05-02 09:58:49 649 1

原创 STL模板库,C++

static 静态成员解决的是同一个类不同对象之间数据和函数的共享问题同一个类的不同对象的静态成员均使用同一个内存空间静态成员函数不存在this指针对象要在创建的同时自动调用构造函数,在消亡之前自动调用析构函数,需要一个能动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内存工作的运算符delete,但malloc和free是库函数,无法满足要求STL - vector, list,...

2018-04-28 15:56:22 120

转载 C++,文件和流, 析构函数和调用delete this

参考链接 点击打开链接C++文件和流标准库,fstream,iostreamofstream 表示输出文件流,用于创建文件并写入信息ifstream 表示输入文件流,用于读取文件信息fstream 表示文件流,具有上述两种功能void open(const char *filename, ios::openmode mode);void close();打开模式:#include<fstre...

2018-04-27 16:34:30 405

原创 运算符重载为成员函数,友元函数

重载运算符是函数重载的一种,针对类对象进行操作,重载的函数中至少有一个是类对象int operator +(ass numone, int num){...}重载为类的成员函数,单目运算符重载-操作数是访问本身的数据,由this指出双目运算符重载-左操作数由this指针给出,右操作数由函数参数给出显示调用-aa.operator(bb);隐式调用-aa++bb;重载为友元函数,单目重载运算符时,由...

2018-04-26 16:24:19 989

原创 python 二维数组 元素赋值

matrix = [[0] * 3] * 3此时matrix = [[0,2,0], [0,2,0], [0,2,0]]本意是把矩阵的第一行第二列赋值为 2, 但是最终结果是每一行的第二列都是 2出现这个结果的原因是:list * n—>n shallow copies of list concatenated, n个list的浅拷贝的连接修改其中的任何一个元素会改变整个列表,为了避免这种情...

2018-04-26 11:25:15 26670

原创 vectro 常用方法,const相关,

在c++函数里面,如果把一个数组作为参数传进去,那么这个数组就会退化成一个指针,就不知道这个数组的长度了。sizeof(a) / sizeof(a[0]);定位new运算符能够在分配内存时指定内存地址。char *buff = new char[99];Justing *pc1;pc1 = new(buff) Justing; //place object in buff栈,自动变量开辟空间,速度...

2018-04-25 20:42:29 208

原创 虚函数与抽象类

虚函数 1, 虚函数是非静态的、非内联的成员函数,而不能是友元函数,但虚函数可以在另一个类中被声明为   友元函数。 2, 虚函数声明只能出现在类定义的函数原型声明中,而不能在成员函数的函数体实现的时候声明。 3, 一个虚函数无论被公有继承多少次,它仍然保持其虚函数的特性。 4, 若类中一个成员函数被说明为虚函数,则该成员函数在派生类中可能有不同的实现。   当使用该成员函数操作指针或引用所标识的...

2018-04-25 20:33:02 1951

原创 继承,构造函数

继承方式-private, protected, public,默认是私有继承继承形式-class b:public A{...};基类的私有成员在派生类是隐藏的私有继承时,基类的公有成员和保护成员改变为私有成员公有继承时,公有成员和保护成员仍是如此保护继承时,公有成员变为保护成员在没有继承的情况下,protected跟private相同。在派生类的时候才出现分化。基类对象不能访问基类的prote...

2018-04-25 19:59:44 106

原创 结构体和类,构造函数

1.C的结构体和C++结构体的区别(1)C的结构体内不允许有函数存在,C++允许有内部成员函数,且允许该函数是虚函数。     所以C的结构体是没有构造函数、析构函数、和this指针的。(2)C的结构体对内部成员变量的访问权限只能是public,而C++允许public,protected,private三种。(3)C语言的结构体是不可以继承的,C++的结构体是可以从其他的结构体或者类继承过来的。...

2018-04-25 10:22:55 1187

原创 const相关,指针相关,数组相关

#include<head.h>#include"head.h"int a = 3, c = 2;const int* b = &a;*b = 8; // errorb  = &c; // right//const用来修饰指针所指向的变量,还是指针;可以修改指针指向地址,但不能直接修改指向内容int* const b = &a;*b = 8; /...

2018-04-24 22:51:17 130

原创 C/C++ 变量作用范围,参数传递方式

全局变量所占用的空间在内存的数据区,局部变量以堆栈的形式允许反复占用和释放函数的声明,定义,参数传递,重载void swap(int&, int&);void swap(int &x, int &y){int temp; temp = x; x = y; y = x;}swa(2,3);值传递,传递一个副本,不影响原始值引用传递,存放的是实参变量的地址默认参数,从右...

2018-04-20 09:45:43 305

原创 宏-内联函数, 内存对齐,

预处理(.i)-宏定义,条件编译指令,注释编译(.s)汇编(.o)-二进制文件,机器指令,与上一步统称为编译链接(.exe)-将相关文件彼此链接宏,简单的替换内联函数(inline),节约一些小函数频繁调用,大量消耗栈空间的问题。inline必须与函数的定义放在一起,才能是内联函数,编译时处理内联。volatile,与const相对,volatile 关键字是一种类型修饰符,用它声明...

2018-04-18 22:28:53 197

空手道俱乐部官方数据集

karate官方数据集 有英文的官方介绍和自己转换成的txt格式的文件

2017-10-30

深度搜索(含孤立节点),有向图, python

对图的类型没有限制, 邻接矩阵表示,实例认证 包含图和相关代码,输出遍历的顺序 补充了孤立节点未被找到的问题

2017-10-28

深度搜索,python,路径输出

对图的类型没有限制, 邻接矩阵表示,实例认证 包含图和相关代码,输出遍历的顺序

2017-10-28

QTdesigner, 实现两个数的输入,并进行运算后,弹窗输出

利用QtDesigner, 实现界面的初始布局,然后又代码调整输入, 自定义函数实现目标输出,弹窗实现

2017-10-27

空空如也

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

TA关注的人

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