学习笔记
Little_Fall
冲冲冲!
展开
-
【笔记】Flink 官方教程 Section2 Learn Flink
地址Section 2 Learn Flink2.1 概览2.1.1 教程目标如何实现流数据处理管道(pipelines)Flink 如何管理状态以及为何需要管理状态如何使用事件时间(event time)来一致并准确地进行计算分析如何在源源不断的数据流上构建事件驱动的应用程序Flink 如何提供具有精确一次(exactly-once)计算语义的可容错、有状态流处理2.1.2 流处理Flink 的应用程序由流式 dataflows 构成,以一个或多个源 source 开始,一个或多个原创 2020-08-12 15:22:23 · 325 阅读 · 1 评论 -
【笔记】Flink 官方教程 Section1 Try Fink
Section 1. Try Flink官方链接1.1 基于 DataStream API 实现欺诈检测1.1.1 项目搭建找一个目录,在其中执行如下命令mvn archetype:generate \ -DarchetypeGroupId=org.apache.flink \ -DarchetypeArtifactId=flink-walkthrough-datastream-java \ -DarchetypeVersion=1.11.0 \ -Dgroup原创 2020-08-11 22:12:35 · 1020 阅读 · 0 评论 -
【分布式】两阶段提交
参考:《数据库系统概念》19.3,19.4概念分布式事务由一个站点发起,多个站点参与。事务必须保证要么在所有站点上都提交,要么在所有站点上都中止。两阶段提交(Two-Phase Commit,2PC)协议是最简单且使用最广泛的提交协议之一。考虑一个例子,站点 S0S_0S0 发起了事务 TTT,用 SiS_iSi 来表示各个参与执行事务的站点。提交协议当所有 SiS_iSi 都通知 S0S_0S0 完成了 TTT 的执行时,S0S_0S0 启动 2PC2PC2PC 协议。阶段1S原创 2020-07-27 23:13:33 · 231 阅读 · 0 评论 -
【笔记】vim 学习笔记
vim 学习笔记前言一个基本的能力,学会备用。参考链接:Linux vi/vim | 菜鸟教程,个人认为写的很好,循序渐进。基本模式介绍vim 分为三种模式:命令模式 command,输入模式 insert,以及底线模式 last line.命令模式打开 vim 后自动进入命令模式。此时敲击键盘会被识别为命令而非字符。常用的几个命令:i,切换到输入模式,可以输入字符。:,切...原创 2020-03-31 00:47:09 · 220 阅读 · 0 评论 -
【笔记】WSL Ubuntu 安装手记
Windows 子系统 Ubuntu 安装手记前言之前安装了双系统,见 windows10+ubuntu 双系统安装手记, ubuntu更改手记。用了一段时间之后,发现纯 ubuntu 并不如想象中的那么美好,有很多东西都得切回 windows 来使用,而两者切换就必须重启电脑,很麻烦,所以考虑一下双系统。最好的教程当然是官网文档 适用于 Linux 的 Windows 子系统文档。这篇博...原创 2020-03-30 23:23:40 · 376 阅读 · 0 评论 -
【笔记】github 开发流程
前言不断试用出一个比较方便的流程,总结在此。以后可能会再更新。欢迎指正错误或者提出更好的方法,互相学习。本地 git 图形化工具:sublime-merge。也推荐 github-desktop,不过不支持 linux.设远程库名字叫做:pingcap/tidb,开发的版本基于 master,我的 github 名字叫做:littlefall.第一次使用从 pingcap/tidb ...原创 2020-03-09 17:09:06 · 345 阅读 · 0 评论 -
【笔记】C++中的智能指针
参考自《effective morden c++》裸指针的缺点无法知道指向的是单个对象还是一个数组.无法知道使用完之后是否需要析构,即是否拥有指向的对象.无法知道应当如何析构(使用 delete 还是专门的函数)无法知道单个析构还是数组析构.不能保证只析构一次。少了会导致内存泄漏,多了是UB.无法检查指针空悬.std::unique_ptr足够小、足够快,几乎和裸指针相同....原创 2020-03-06 19:01:25 · 217 阅读 · 0 评论 -
【笔记】SQL Join 的类型及实现方法
简介JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。select * from t join t2on t.id = t2.id;类型(INNER) JOIN,内连接,只连接匹配的行。LEFT (OUTER) JOIN,左外连接,返回左表的全部行和右表满足 ON 条件的行,如果左表的行在右表中没有匹配,那么留作 NULL.RIGHT (OUTER) ...原创 2020-02-17 16:39:24 · 705 阅读 · 0 评论 -
【笔记】《TiDB 源码阅读系列》6 Select 语句概览
快速笔记语句及处理建表:CREATE TABLE t { id VARCHAR(31), name VARCHAR(50), age int, key id_idx (id)};select : 全表扫描+过滤,不考虑索引SELECT name FROM t WHERE age > 10;先放一下 Insert 的处理流程总结:server/con...原创 2020-02-12 14:30:17 · 507 阅读 · 0 评论 -
【笔记】《TiDB 源码阅读系列》4 INSERT 语句概览
前言原文链接:TiDB 源码阅读系列文章(四)Insert 语句概览前几篇我做的笔记:【笔记】《TiDB 源码阅读系列》1-3 SQL 框架原文里有些地方和现在的 TiDB 略有差异,我会在笔记中指出。(四) Insert 语句概览本文重点介绍语句在执行框架下的具体执行逻辑。语句连接 TiDBmysql -h 127.0.0.1 -P 4000 -u root建立表CREAT...原创 2020-02-11 17:46:24 · 388 阅读 · 0 评论 -
【笔记】TiDB 安装及调试
基础学习Go Tour;(我的Go Tour笔记)SQL操作 HackerRankTiDB下载及运行保证本地已经安装了go,git, mysql从github将tidb代码clone到本地。需要了解的知识:git clone.注:如果clone太慢,可以先clone到码云上,再从码云clone到本地,实测飞快。进入本地tidb目录,执行make server.需要了解的知识...原创 2020-02-11 16:31:24 · 1553 阅读 · 0 评论 -
【笔记】《TiDB 源码阅读系列》1-3 SQL 框架
前言跟着这一系列文章,好好了解一下TiDB。链接:TiDB 源码阅读系列文章(一)序学习一种系统最好的方法是阅读一些经典著作并研究一个开源项目,数据库也不例外。三篇前置文章:说存储,TiKV 简介讲计算,TiDB 结构论调度,PD 有关内容这一系列文章会按照数据库的组件以及 SQL 处理的常见流程,讲解 Protocol 层,以及Parser、Preprocess、Opti...原创 2020-02-11 11:22:19 · 424 阅读 · 0 评论 -
【笔记】A Tour of Go - 练习篇
本文总结了 Go Tour 中各个练习的实现,语言特性总结于另一篇文章中。原创 2020-02-03 18:47:38 · 594 阅读 · 0 评论 -
【笔记】A Tour of Go - 语言特性整理篇
Go语言之旅是官方出品的非常好的学习手册。 这篇文章将总结其中提到的Go语言特性,方便日后查询。原创 2020-02-02 23:30:22 · 477 阅读 · 0 评论 -
【笔记】C++ 多线程读入数据
差的好多,抓紧学了。参考链接:std::istream::seekghttps://blog.csdn.net/nirendao/article/details/880961951. 计算文件大小std::ifstream的两个成员函数tellg():返回输入流的当前位置,也就是下一个要读的字符距离首字符的偏移量。istream& seekg(off, way),设置输入流...原创 2020-01-02 17:24:17 · 3697 阅读 · 1 评论 -
【笔记】Golang学习笔记
go在ubuntu下的安装参考链接:Go下载、安装说明、Go教程下载安装包;执行tar -C /usr/local -xzf go<version.os-arch>tar.gz解压;编辑~/.profile,加入一行export PATH=$PATH:/usr/local/go/bin,注销用户,重新登录;创建文件hello.go,内容如下:package maini...原创 2019-12-19 23:37:27 · 201 阅读 · 0 评论 -
【笔记】ubuntu更改手记(附sublime配置)
# Yout mind is clear. #原创 2019-12-18 08:44:09 · 254 阅读 · 0 评论 -
【笔记】windows10+ubuntu 双系统安装手记
前言基本参考了cnblogs_不妨不妨,来日方长的博客,他写的非常详细且全面,这里仅作记录和备用。电脑属性BIOS模式是UEFI(运行+msinfo32 查看)Windows10双硬盘(右击此电脑+管理+磁盘管理 查看)资源UltraISO 软碟通ubuntu镜像(这里使用ubuntu18.04)U盘(大于2GB就可以)步骤格式化U盘,使用软碟通将系统镜像写入。...原创 2019-12-13 15:47:16 · 426 阅读 · 0 评论 -
【笔记】树莓派RPi3 B+探索(装系统篇)
去年打学校的ctf赢了一个树莓派回来,一直没用过,探索一下。参考RPi3 B+ 快速入门 waveshare硬件与材料Raspberry Pi 3 Model B+,配件:盒子,电源线存储卡,读卡器显示器(配HDMI线),鼠标,键盘软件树莓派官方操作系统,Raspbian Buster with desktop and recommended software格式化存储卡,SDF...原创 2019-12-05 04:02:20 · 402 阅读 · 0 评论 -
【笔记】ZKW线段树一:单点修改,区间查询
打了这么久比赛连线段树都不会就离谱参考资料 :线段树详解 (原理,实现与应用), CSDN,岩之痕《统计的力量》,清华大学,张昆玮今夜,我是ikun.简介zkw线段树是一种非递归的线段树,以常数小、代码短著称。单点加减,区间求和洛谷P3374 【模板】树状数组 1//zkw线段树,只能查询[1,m-2]的范围struct SGT{ ll save[M<<...原创 2019-11-10 02:46:32 · 381 阅读 · 0 评论 -
算法竞赛入门经典 第一,二,三章学习笔记
写在前面我的第七篇博客,加深一下基础,从小白书学起. 先总结一下以前看过的第一二三章内容,加深记忆原创 2017-08-28 18:01:05 · 435 阅读 · 0 评论 -
Java SublimeText 编译环境配置及基础程序
找了一晚上JDBC-ODBC,有点受不了java了 决定重新配置一遍,以后用sublime text 3写java. st配置文件如下.注意环境变量要设置好.{ "shell_cmd": "javac -encoding UTF-8 -d . \"$file\" && start cmd /c \"java \"$file_base_name\" & pause>>nul\"",原创 2017-10-22 00:37:46 · 351 阅读 · 0 评论 -
Java 命令行及SublimeText编译环境配置(二):涉及包的编译选项
java sublime带包编译原创 2017-11-28 12:03:55 · 533 阅读 · 0 评论 -
背包九讲学习笔记 第二讲 完全背包问题
问题完全背包问题:给定一个容量为v的背包和n种物品,每种物品有无限个且有体积Ci和价值Wi.问最多能向背包中装多少价值的物品?naive approch状态表示:F(i,j)仍表示对于前i种物品,背包容量为j时最多价值为多少? 初始情况:F(0,j)=0 状态转移:f(i,j)=max{f(i-1,j-kCi)+kWi} (0<=k<=j/Ci) 复杂度O(V∑V...原创 2018-04-09 16:37:40 · 1137 阅读 · 2 评论 -
背包九讲学习笔记 第七讲-有依赖的背包问题 第八讲-泛化物品
背包dp,背包到底是什么?7.有依赖的背包问题有依赖的背包问题指的是如果物品j依赖于物品i, 要想选择物品j必须先选择了物品i. 一个简化的问题是:一件物品只会依赖最多一件物品,且附属品不会被依赖.思考首先想一下我的dp训练第19题黄金矿工.那道题里实际上一条过原点的直线上的金块会按顺序依赖.当时的解法是将一条线上的所有物品看成一组,然后将组中前方物品的值加在后方...原创 2018-04-15 21:50:05 · 1596 阅读 · 0 评论 -
C++ STL bitset 学习笔记
以下来自C++99手册bitset是一种位集合数据结构, 支持各种二进制运算如逻辑与或等.构造器bitset<位数> bs(初始数字) 初始数字可以省略. 遍历可以用size()和方括号,输出数字注意反向. 或者直接cout<<bs.操作符!=, ==, &=, ^=, |=, ~, <<=, >>=, [] ...原创 2018-04-10 20:14:59 · 238 阅读 · 0 评论 -
背包九讲学习笔记 第三讲 多重背包
题目给n种物品和一个容量为v的背包,每种物品最多有num[i]件可用,每个物品都有一个体积volume[i]和价值value[i],求背包最多能装多少价值的物品?基本算法dp[j]表示容量为j的背包最多能装多少价值的物品. dp[j]=max{dp[j-k*volume[i]]+k*value[i]} 0<=k<=num[i] 复杂度O(VNnum[i])如果转...原创 2018-04-11 09:32:32 · 964 阅读 · 0 评论 -
背包九讲学习笔记:第四讲-混合三种背包问题 第五讲-二维费用的背包问题
第四讲-混合三种背包问题问题如果三种背包问题混合起来,即有的物品能选一次,有的物品能选多次,有的物品能选无限次,如何求解?解法那当然是分类讨论if else. 其实在完全背包的解法中就有这样的感觉.对于总体积超过背包体积的,按完全背包算.实现 01背包实际上都按多重背包解即可,复杂度不会提高.而对于完全物品,设置它的数量为v/volume[i]*10,保证不会爆范围...原创 2018-04-11 20:47:56 · 602 阅读 · 1 评论 -
背包九讲学习笔记 第九讲 背包问题问法的变化
背包九讲最后一讲了,学完这个,然后去做10道左右的背包训练题,再总结一次,这部分就结束了.背包问题的一些基础问法给定背包的体积限制,求最大价值 给定背包的体积限制,求最小价值 (max改为min) 给定背包的体积限制,求最大件数 (价值为1)(或贪心) 给定背包的体积限制,求最小件数 (贪心) 给定背包的体积限制,求最多装满多少空间(判断每个体积是否可达)输出方案去掉空间优...原创 2018-04-18 12:27:13 · 738 阅读 · 0 评论 -
背包九讲学习笔记 第六讲-分组的背包问题
第六讲-分组的背包问题题目有n件物品可以被放入一个容量为v的背包中,每件物品体积为volume[i],价值为value[i].此外,这些物品被分成p组,每组中的物品最多只能选一件,求背包中最多可以装多少价值的物品.分析对于每组物品,可以选择这组物品中某一件,或者这组中一件也不选. 是不是感觉这个东西有点像,01背包? 如果用dp(k,v)表示前k组物品最多在容量为v的背包中...原创 2018-04-12 17:59:43 · 576 阅读 · 0 评论 -
背包九讲学习笔记 第一讲 01背包
第一讲 01背包题目给定物品个数n,背包容量v,每个物品都有一个体积c和价值w,要求向背包中装物品使得总价值最高.基本思路状态表示:f(i,j)表示前i个物品试图装入一个容量为j的背包的最大价值. 边界情况:f(0,j)=0. 状态转移:f(i,j)=max(f(i-1,j),f(i,j-save[i])+value[i]). 即装或不装第i个物品 时间复杂度O...原创 2018-04-06 23:29:17 · 3811 阅读 · 0 评论 -
学习笔记之 [卷积] 与 [FFT]
c++ std::complex模板类,属性可选&amp;amp;amp;amp;lt;float&amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;double&amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;long double&amp;amp;amp;amp;gt;,区别在于精度和复杂度 构造函数 complex(实部,虚部) 成员原创 2018-05-08 20:46:15 · 1903 阅读 · 1 评论 -
C语言的数据类型及用%u输出char的问题
今天学弟问了我两个很好的问题: 1、各种基本数据类型的本质区别是什么?网上说是分配的字节数不同,但是也有两种不同的数据类型分配的字节数一样的情况啊。 2、我输入 char a=-1; printf(”%u”,a); 我的理解是 char是一个字节的,用char数据类型保存-1应该是11111111(补码),然后用%u输出应该是2的八次方减一,但是为啥结...原创 2018-04-20 14:35:42 · 8320 阅读 · 1 评论 -
记一次愉悦(并不)的装系统经历
昨天下午电脑突然蓝屏循环,而且根本不给我进入安全模式的机会,晚上有数模答辩,所以急急忙忙的找修理店用pe拷了一下文件,20块。如果重装电脑是50块,很赚啊,于是决定回来之后自己配置一个pe,装一个系统。pe是直接从百度上下载的,U深度,看起来还不错,但是问题很大,一会再说。 开了pe,我并没有ISO,但是莫名其妙就可以安装,装了一个win10的专业版,半个小时差不多就好了,之后还需要大更新一...原创 2018-04-27 15:21:40 · 236 阅读 · 0 评论 -
动态规划系列学习之 最长上升子序列(LIS)问题全解
lis - Longest Increasing Subsequence - 最长上升子序列1.LIS问题给一个序列,找出其中最长的上升子序列,输出长度O(nlogn)做法维护一个集合,其中第i个元素表示长度为i的上升子序列的最后一个数字. 每次出现新的数字时,查找并替换它的lower_bound,如果没有则直接插入. 集合长度即为lis长度.例题: HDU 102...原创 2018-06-06 22:27:52 · 986 阅读 · 0 评论 -
学习笔记之[组合数求解]
对于组合数取模 C(a,b)=a!b!(a−b)!%pC(a,b)=a!b!(a−b)!%pC(a,b)=\frac{a!}{b!(a-b)!}\%p (p为质数) 一般有以下几种情况:a,b,p都较小递推解决 C(a,0)=1C(a,0)=1C(a,0)=1 C(a,b)=C(a,b−1)∗(a−b)/bC(a,b)=C(a,b−1)∗(a−b)/bC(a,b)=C(a,b-1)*...原创 2018-07-01 03:11:01 · 264 阅读 · 0 评论 -
SublimeText JAVA编译环境配置(三):包配置,JAVA EE开发,知识总结
给不想用或者用不了IDE的同学们. 第一篇 Java SublimeText 编译环境配置及基础程序 第二篇 Java 命令行及SublimeText编译环境配置(二):涉及包的编译选项1.配置JAVA环境从oracle官网下载JDK安装记住安装目录.添加环境变量JAVA_HOME,值为java的安装路径,如C:\Program Files\Java\jdk1.8.0_171\在...原创 2018-07-19 03:49:49 · 401 阅读 · 0 评论 -
高斯消元学习笔记
概述高斯消元用于求解线性方程组,也可用于求矩阵的秩和逆. 方法是先将系数矩阵消为上三角行列式,再逐一回代求解。算法此处参考了ddd的板子,二维数组A中存放系数矩阵,一维数组B中存放常数项。 1.设当前正在处理第i行,将i到n中第i列最大的一行置换到第i行。 2.当A[i][i]=0时,出现异常:如果B[i]=0,则有多解,否则无解。 3.将其他所有行的第i列到第n列都减去本行相...原创 2018-07-06 23:09:32 · 422 阅读 · 0 评论 -
【学习笔记】C++ Primer及其它
前言现在写程序有时会受困于C++的语法,虽然竞赛的核心是算法,但是更好地掌握一门语言总是不亏的。BGM:Love Me Like You Do (Violin Cover)零散的总结变量初始化有两种方式,复制初始化int a = 5,直接初始化int a(5),直接初始化更灵活且效率更高。构造函数快速初始化的方式Myclass(int a, int b): a(a),b(b){...原创 2018-09-05 19:11:04 · 211 阅读 · 0 评论 -
【学习笔记】树状数组原理
前言介绍树状数组的基础,原理,以及较高级应用。 非常不建议参考本文的参考代码,因为长,慢,丑。预备知识前缀和数组,差分数组树状数组基础问题:对长为1e5的数组,执行1e5次操作,包括单点增加与区间求和。 lowbit:x&amp;amp;amp;amp;amp;amp;amp;-x,截取数字x的最后一个二进制1及之后的部分。 add(p,v):对p以及递归p+lowbit(p)处的值加v,O(logn) sum(...原创 2018-09-06 17:37:10 · 505 阅读 · 0 评论