玩转数据结构——二分搜索树基础
一、树结构本身是一种天然的组织结构 将数据使用树结构后,出奇的高效。 二、二叉树 和链表一样,动态数据结构 class Node{ E e; Node left; Node right; } 二叉树(多叉树) 二叉树具有唯一根节点 class Node{ E e; Node left; <-- 左孩子 Node right; <-- 右孩子 } 二叉树每个节点最多有两个孩子节点 二叉树每个节点最多有一个父节点 二叉树具有天
[动态规划] leetcode 96 Unique Binary Search Trees
problem:https://leetcode.com/problems/unique-binary-search-trees/ 左子树个数 * 右子树个数 class Solution {
public:
int numTrees(int n) {
vector<int> dp(n + 1);
dp[1] = 1;
for(int i = 2;i <= n;i++)
{
dp[i]
运算符重载和深浅拷贝
对于某些运算符号(+,-,*,/....),我们不满足与它原有的操作方式,而是要在对特有对象(如负数的加减)进行使用,但是编译器会不允许这样做,因为会与操作符原本的类型不匹配而导致操作失败。因此我们需要对运算符进行重载,即赋予它新的意义,从而满足我们的使用需求。 如complex_a和complex_b是两个复数对象求两个复数的和, 希望能直接写:complexa + comple_b 运算符重载的目的是:扩展C++中提供的运算符的适用范围,使之能作用于对象。 同一个运算符,对不同类型
[Spring cloud 一步步实现广告系统] 15. 使用开源组件监听Binlog 实现增量索引准备
MySQL Binlog简介 什么是binlog? 一个二进制日志,用来记录对数据发生或潜在发生更改的SQL语句,并以而进行的形式保存在磁盘中。 binlog 的作用? 最主要有3个用途: 数据复制(主从同步) Mysql 的Master-Slave协议,让Slave可以通过监听binlog实现数据复制,达到数据一致性目的 数据恢复 通过mysqlbinlog工具恢复数据 增量备份 Binlog 变量 log_bin (Binlog 开关,使用show variables like 'log_
PAT 甲级 1019 General Palindromic Number (进制转换,vector运用,一开始2个测试点没过)
1019 General Palindromic Number (20 分) A number that will be the same when it is written forwards or backwards is known as a Palindromic Number. For example, 1234321 is a palindromic number. All single digit numbers are palindromic numbers. Although
Linux多线程基本函数
按照所学的进度会不断更新...虽然学的可能有点慢 1、pthread_create():创建线程 头文件:#include<pthread.h> 函数声明: int pthread_create(pthread_t *restrict tidp, //新创建的线程ID指向的内存单元 const pthread_attr_t *restrict_attr, //设置线程属性,默认为NULL void*(*start_rtn)(void*), //新创建
可变长参数、函数对象、嵌套、名称空间和作用域
目录 可变长参数、函数对象、嵌套、名称空间和作用域 一、可变长参数 1.1 可变长形参之* 1.2 可变长实参之* 1.3 可变长形参之** 1.4 可变长实参之** 二、函数对象 2.1、引用 2.2、当做实参参数传给一个形参参数 2.3、可以作为容器类数据类型中的元素 2.4 可以当做函数的返回值 三、函数的嵌套 3.1 函数的嵌套定义 3.2 函数的嵌套调用 四、名称空间和作用域 4.1 名称空间 4.1.1 内置名称空间 4.1.2 全局名称空间 4.1.3 局部名称空间 4.1.4
Trunk的配置——实验篇
Trunk的配置实验首先打开GNS3,配置好2台路由和4台PC机,将他们如图用网线连接好,并显示端口,开启。如图:双击的打开sw1和sw2,如图:此时编辑vlan和IP地址,便于识别。如果实验成功,那么PC1和PC3可以通讯,PC2和PC4可以相互通讯。进去后首先关闭路由功能,配置VLAN10,20,配置完成后查看。下一步,就是进入端口,把端口放入VLAN当中。进入SW1将f1/0f1/1分别放入
[排序][vector] Jzoj P6288 旋转子段
Description 题解 显然我们对于两个位置i和j,如果a[i]+i==a[j]+j,那么反转后肯定都为固定点 然后我们可以枚举每个旋转点,每个点打入v[a[i]+i] 我们先按照旋转区间长度先排序,然后我们发现这个点再vector中的位置,就是它内部所包含的反转过后能成为不动点的点的数目(因为比他小的都包含在里面,随着它反转必然成为不动点) 还要加上一(这个点本身的贡献)这样的话,剩下的不反转的区间直接使用前缀和维护不动点个数即可 代码 1 #include <vector>
2
函数参数类型、用法及代码示例
在编程语言里,将一个个功能定义成函数,能够进行反复调用,而不是每次都重复相同的代码,这种方式能够大幅度降低代码的复杂度。 1.基础 我们定义函数的时候可以带参数,也可以不带参数,可以有返回值,也可以没有返回值(没有返回值时默认为None)。 #不带参数、无返回值的函数
def func1():
print("This is a function!")
#带参数、无返回值的函数,参数a,b是函数的位置参数
def func2(a,b):
print("Result:
CSS 样式的使用方式、选择器
在html中使用css的三种方式: 1、行内样式:同过元素的style属性来设置 <p style="font-size:20px; color:red">hello</p> 属性之间分号隔开。 2、内部样式:在<head>的<style>元素中定义css样式 <style>
p{font-size: 20px;color: red}
</style> 3、外部样式:在css文件中定义css样式,然后在html的<head>中通过<style>引入外部样式表 p{font-
集训队8月9日(组合计数+容斥原理+Mobius函数)
刷题数:4 今天看了组合计数+容斥原理+Mobius函数,算法竞赛进阶指南169~179页 组合计数 https://www.cnblogs.com/2462478392Lee/p/11328938.html 总结 今天打了一场集训队cf训练,又找到了一个自己的错误,为什么会过了样例也wa1,以后要看清楚输入的%lld和%d!!!
torch7安装的坑
https://github.com/torch/torch7/issues/1086 sudo su
export TORCH_NVCC_FLAGS="-D__CUDA_NO_HALF_OPERATORS__"
bash install-deps
yes | bash ./install.sh
按照官网的安装方法会出现问题,类似于什么不能编译 上面的安装方法work,但要注意“Be careful with the solution that @adam-dziedzic prov
[动态规划] leetcode 95 Unique Binary Search Trees II
problem:https://leetcode.com/problems/unique-binary-search-trees-ii/ 用递归传最小值和最大值写起来代码应该会更简练,此处用的是递推写的。 class Solution {
public:
TreeNode* clone(TreeNode* p, int val)
{
if(!p) return nullptr;
TreeNode* node = new TreeNode
BZOJ 3112: [Zjoi2013]防守战线 ZKW费用流
title BZOJ 3112 LUOGU 3337 Description 战线可以看作一个长度为n 的序列,现在需要在这个序列上建塔来防守敌兵,在序列第i 号位置上建一座塔有Ci 的花费,且一个位置可以建任意多的塔,费用累加计算。有m 个区间[L1, R1], [L2, R2], …, [Lm, Rm],在第i 个区间的范围内要建至少Di 座塔。求最少花费。 Input 第一行为两个数n, m。 接下来一行,有n 个数,描述C 数组。 接下来m 行,每行三个数Li,Ri,Di,描述一个区间
ERROR: Cannot uninstall 'chardet'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
pip 安装 docker库报错: ERROR: Cannot uninstall 'chardet'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall. 直接如下命令: sudo pip install docker --ignore-installe
2019暑假集训 8/9
学习内容:费用流 今日完成题数(不包含多校):2 /*多校补题情况(之前定的每支队伍标准):X*/ 今日看书情况:无 学习算法的总结 费用流 今日做题总结 网络流24题 已经完成了9个 题解在写完统一总结吧 cf训练 今日心得: 费用流学了spfa和dijstra 还在学习中 明日任务: 网络流24题
又一位来自未来的穿越者2020世界大战?!
这个世界存在穿越者吗? 在电视剧或者小说之中,人类都幻想过时间旅行。 近日,一名叫迈克尔·菲利普斯的英国男子自称自己是穿越者 出生于2043年,他表示人类将在2020年爆发第三次世界大战。 据英国媒体近日报道,迈克尔·菲利普斯在网上发布了一段13分钟长的视频 视频中他挡住了自己的脸。 菲利普斯自称出生于2043年,他在军队服役,后来到了一个地方,这里有一个球体就是所谓的时间机器。 菲利普斯用模糊不清的英语说,2020年将爆发第三次世界大战,英国的军队被拖入战争中。 菲利普斯还表示,一场巨大的自
今日推荐
周排行