- 博客(54)
- 收藏
- 关注
原创 git小结
Git分布式版本控制git工作流程1. clone工作副本2. 修改工作副本3. 查看修改4. 提交修改5. 可撤回再修改并提交工作区 & 缓存区 & 版本库自上次提交后对文件的修改情况git status 查看工作区和缓冲区差异git diff在当前目录下初始化git仓库git init工作区->缓冲区git add缓冲区->版本库git commit从远程仓库中拷贝项目git clone git_address m
2021-03-16 20:13:00
150
原创 Docker常用指令总结
框架docker引擎 —— container —— image —— repositoryrepodocker search repo_name //查找repoimagedocker pull repo_name // 下载镜像docker rmi repo_name // 删除镜像docker images // 查看本地镜像containerdocker ps // 查看运行的容器-a 查看所有容器(包含未运行的)docker run ubuntu /bin/ba
2021-03-14 14:41:29
267
原创 HashMap的求容量方法tableSizeFor(n)
Java8对许多内置的容器进行了优化与拓展,其中对HashMap的改变尤其大。之后将进行总结。最近在看HashMap的源码时,发现了里面好多很不错的算法,相比Java7从性能上提高了许多。其中tableSizeFor就是一个例子。tableSizeFor的功能(不考虑大于最大容量的情况)是返回大于输入参数且最近的2的整数次幂的数。比如10,则返回16。该算法源码如下:static final int tableSizeFor(int cap) { int n = cap - 1; n |
2021-01-12 19:49:22
414
原创 MIT分布式课程笔记
实验MapReduceRaft算法K/V serverSharded K/V server笔记分布式基础: 存储、通信、计算系统 抽象,最终目标:使系统像单机一样方便实现: 远程调用、多线程、锁性能: 可扩展性 容错性(可用性,可修复性,复制多份,非易失性存储) 一致性(get,put,分布式系统中不同机器上数据要有一致性,如数据要存储在不同机架/机器上等) MapReduce Map Function & Reduce Function 写好.
2021-01-08 14:21:35
249
原创 Flink窗口从创建到结束的流程要点
window流程流数据不断进入此operator, 当地一个属于某window的数据进入后, 创建该window(默认是整点型的window,可以设置偏移量)如reduce/aggregation/fold,每个数据都已进入window就开始操作,process则缓存所有再进行操作直到某数据进入后,watermark超过window结束时间,window操作结束有晚到的数据在window结束时间后规定延迟内,window重新进行内部指定的操作还有更晚到的数据在window结束时间后规定延迟后,进
2020-12-15 15:16:15
311
原创 Maven dependency下scope详解
scope的参数如下:compile默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。适用于所有阶段,会随着项目一起发布provided跟compile相似,但是表明了dependency 由JDK或者容器提供,例如Servlet AP和一些Java EE APIs。这个scope 只能作用在编译和测试时,同时没有传递性。???runtime表示dependency不作用在编译时,但会作用在运行和测试时,如JDBC驱
2020-11-24 17:07:28
5822
原创 C++编译流程问题(make)
C++运行流程编写.cpp文件源码(gcc 与 g++ 分别是 gnu 的 c & c++ 编译gcc/g++ 在执行编译工作的时候,总共需要如下4步)预处理,生成 .i 的文件生成汇编语言, 生成文件 .s生成目标代码生成 .o 的文件链接, 生成可执行程序// gcc -c main.c //仅执行前三步生成.o文件即停止// gcc main.c -o main //指定结果名字make编译makefile文件格式:target:source1 s
2020-10-27 20:11:36
2931
原创 Zookeeper的ZAB协议总结
ZooKeeper集群是一个基于主从复制的高可用集群,每个服务器承担如下三种角色中的一种: Leader一个ZooKeeper集群同一时间只会有一个实际工作的Leader,它会发起并维护与各Follwer及Observer间的心跳。所有的写操作必须要通过Leader完成再由Leader将写操作广播给其它服务器。 Follower一个ZooKeeper集群可能同时存在多个Follower,它会响应Leader的心跳。Follower可直接处理并返回客户端的读请求,同时会将写请求转发给...
2020-07-26 10:15:05
3045
原创 前中后序遍历二叉树(非递归做法)
前序void PreOrderIteration1(pTree node){ if(node == nullptr) return; stack<pTree> s; pTree p = node; s.push(p); while(!s.empty()) { p = s.top(); cout<<p->_data<<" "; s.pop(); .
2020-07-21 21:28:03
2652
原创 正数负数之源码反码补码
正数原码/反码/补码均相同example: 5原码:0000 0101反码:0000 0101补码:0000 0101负数原码:对应正数的原码,首位取1即可反码:首位不变,其余各位取反补码:反码+1example:-5原码:1000 0101反码:1111 1010补码:1111 1011...
2020-07-21 20:06:11
360
原创 SQL小记
求每门课的最高分同学的数据select t1.学号,t1.课程号,t1.成绩from table t1where t1.成绩 = (select max(t2.成绩)from table t2where t2.课程号 = t1.课程号group by t2.课程号)求每个部门薪水前三名同学的数据select * from table a left join table bon a.id=b.id and a.salary<b.salarygroup by a.id .
2020-07-21 18:02:51
193
原创 快速排序java实现
CUT THE CRAPSHOW ME THE CODEpublic class QuickSort { public static void sort(int a[], int low, int hight) { int i, j, index; if (low > hight) { return; } i = low; j = hight; index = a[i];
2020-07-17 15:19:38
2771
原创 java大数据类型BigInteger用法
BigIntegerpublic class test { public static void main(String[] args) { BigInteger n=new BigInteger("123"); BigInteger tmp=new BigInteger("2"); n=n.add(BigInteger.valueOf(12)); n=n.subtract(tmp); n=n.multiply(tmp
2020-07-14 11:42:16
307
原创 Mysql面试常见问题总结
MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?设计良好的数据库结构,允许部分数据冗余,尽量避免join查询,提高效率。 选择合适的表字段数据类型和存储引擎,适当的添加索引。 mysql库主从读写分离。 找规律分表,减少单表中的数据量提高查询速度。 添加缓存机制,比如memcached,apc等。 不经常改动的页面,生成静态页面。 书写高效率的SQL。比如 SELECT * FROM TABEL 改为 SELECT field_1, field_2, fiel
2020-06-21 11:49:07
332
原创 红黑树——简单明了的学生思路
在看红黑树之前一定要了解链表、二叉搜索树、二叉平衡树等等基础哦!红黑树 Red-Black Tree 为什么? 为了解决二叉搜索树的缺点,使最差搜索时间都能达到O(logN)。比如应用在HashMap底层Hash链表过长时优化。 是什么? 本质上就是二叉搜索树,通过优化和性质来确保其较平衡。性质:所有结点均为红色或黑色 根节点为黑色 红色结点子结点只能为黑色 任一结点到叶子结点的路径上黑色结点的数量都相同 叶子节点下的或Null结点为黑色 做什么? .
2020-06-11 21:51:23
8351
1
原创 Java值传递的一些理解
首先,不要纠结于 Pass By Value 和 Pass By Reference 的字面上的意义,否则很容易陷入所谓的“一切传引用其实本质上是传值”这种并不能解决问题无意义论战中。更何况,要想知道Java到底是传值还是传引用,起码你要先知道传值和传引用的准确含义吧?可是如果你已经知道了这两个名字的准确含义,那么你自己就能判断Java到底是传值还是传引用。这就好像用大学的名词来解释高中的题目,对于初学者根本没有任何意义。一:搞清楚 基本类型 和 引用类型的不同之处int num = 10;.
2020-06-08 17:09:12
3222
原创 Zookeeper选举机制详解
Leader选举流程详述一、首先开始选举阶段,每个Server读取自身的zxid。二、发送投票信息a、首先,每个Server第一轮都会投票给自己。b、投票信息包含 :所选举leader的Serverid,Zxid,Epoch。Epoch会随着选举轮数的增加而递增。三、接收投票信息 1、如果服务器B接收到服务器A的数据(服务器A处于选举状态(LOOKING 状态) 1)首先,判断逻辑时钟值: a)如果发送过来的逻辑时钟Epoch大于目前的逻辑时钟。首...
2020-06-02 15:44:49
1405
原创 ssh连接原理分析
假定条件:A连接B理论:A请求连接B B在其授权列表中查看 B通过A的公钥加密一段数据传送给A A接受后,将数据私钥解密发送给B B验证其数据成功,则A通过验证,可以ssh连接B操作ssh-keygen -t rsa //生成一对密钥cd ./sshssh-copy-id B@ipOfB //传递密钥给B使用:ssh B@ipOfB注:ubu...
2020-02-27 13:58:34
3723
原创 Flink学习路线
Flink学习资料官方文档https://flink.apache.org/ 官方视频课程https://github.com/flink-china/flink-training-course/blob/master/%E8%AF%BE%E7%A8%8B%E8%A1%A8%EF%BC%88%E6%8C%81%E7%BB%AD%E6%9B%B4%E6%96%B0%EF%BC%89.md...
2020-02-19 17:43:08
1895
原创 数据库
数据库分类:关系型数据库:oracel mysql sqlserver非关系型数据库(NoSQL):键值类 列存储类:Cassandra \ HBase 文档型数据库:MongoDB 图形型数据库: 时间序列数据库(TSDB):InfluxDB,TDengineHadoop平台SparkDocker知识点总结概念模型:E-R(实体-联系...
2020-01-05 14:59:20
490
原创 A*算法
A*算法概述:F=G+H初始化根节点的G、H、F;根节点加入open表;while(open表不为空){从open表中取出估价函数最小的节点作为当前节点P;//注意是取出,这里open表中元素数减一if(P为目标节点)返回P;P加入close表中;for(P的每个孩子节点child){...
2019-11-17 11:20:49
650
原创 markdown语法总结
快捷键撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + Shift + H无序列表:Ctrl/Command + Shift + U有序列表:Ctrl/Command + Shift + O检查列表:Ctrl/Command + Shift + ...
2019-11-02 09:39:11
555
原创 Java基础总结
Java learning基础: .java文件,通过编译生成.class文件(javac),再通过JVM生成机器码运行(java) 不同文件 一个文件只有一个public类,类名=文件名 非public类可有多种 面向对象语言,类中:类方法,类属性,类方法内面向过程 public class Hello { public static void main(Stri...
2019-11-01 13:12:26
2005
原创 Linux 解析
基础:lspwdmkdir testrmdir testrm test //removemv oldname newnamecp test test1 //copyclearsudo //按照root执行sudo apt-get install package_namechmod +x package_name //给文件加可执...
2019-10-14 19:50:30
528
原创 C++常用方法总结
基础sizeof(...);//返回大小,以字节为单位typeid(a).name();//返回类型to_string(2); //返回字符串“2”string s="123";s[0];//类型为chars.fing('2'); //返回索引1 struct ListNode { int val; ListNode *next; ListNod...
2019-10-13 11:07:15
813
原创 leetcode刷刷刷
记录一些leetcode题目的小技巧算法思路+实现报错:warning: control reaches end of non-void function注意返回值1.求众数int key=nums[0];count=1;遍历:遇到同样的数count+1,否则count-1;count=0时,key换成当下的数,count=1;key即为众数;2.求最大子序...
2019-10-10 19:54:58
1716
原创 InfluxDB总结
https://docs.influxdata.com/influxdb/v1.7/introduction/getting-started/influx helpinflux -version...command line interface (CLI)先打开influxd服务器 influxdhelpshow databases;use db_name;show m...
2019-10-08 12:33:05
249
原创 MySQL必知必会——语句总结
https://dev.mysql.com/doc/refman/8.0/en/Mysql使用:图形界面C/S模式使用Mysql: 连接Mysql服务器: mysql -h hostname/host_IP -p port -u username -p 指定主机 指定端口,默认3...
2019-10-08 12:26:41
1815
原创 linux?mac?windows?系统选择
Linux 、 Windows 、 Mac三种常用的操作系统:1.Windows 适用于办公、娱乐,日常使用 推荐:联想thinkpad2.Mac 作为Linux-like操作系统,适合编程开发 推荐:Macbook pro3.Linux作为服务器操作系统,少用图形界面,远程连接ssh命令行操作即可,可在Windows下安装虚拟机不用装双系统。#程序员标配:wind...
2019-08-16 09:45:57
3668
原创 Python基础总结
Python语法基础第一句python# print('HelloWorld !\n')主函数#if __name__ == '__main__': 格式#注意缩进和冒号#同一行多条语句间加分号 #\是续行符和转义符 多加一个也是取消转义符号#hex()转为16进制字符串 oct()转为8进制字符串#'''或者"""三个引号多行注释 """允许字符串跨多行#\r ...
2019-08-09 13:46:30
1819
原创 PATB1017 A除以B
1017A除以B(20分)本题要求计算A/B,其中A是不超过 1000 位的正整数,B是 1 位正整数。你需要输出商数Q和余数R,使得A=B×Q+R成立。输入格式:输入在一行中依次给出A和B,中间以 1 空格分隔。输出格式:在一行中依次输出Q和R,中间以 1 空格分隔。输入样例:123456789050987654321 7...
2019-04-20 23:24:46
284
原创 PATB1016 部分A+B
1016部分A+B(15分)正整数A的“DA(为 1 位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A=3862767,DA=6,则A的“6 部分”PA是 66,因为A中有 2 个 6。现给定A、DA、B、DB,请编写程序计算PA+PB。输入格式:输入在一行中依次给出A、D...
2019-04-13 22:51:36
238
原创 PATB1015 德才论
1015德才论(25分)宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入格式:输入第一行给出 3 个正整数,分别为:N(≤105),即考生总数;L(≥60),为录取...
2019-04-11 21:26:15
192
原创 PATB1014 福尔摩斯的约会
1014福尔摩斯的约会(20分)大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母D,代表星期四;第 2 对相...
2019-04-08 18:22:37
191
原创 PATB1013 数素数
1013数素数(20分)令Pi表示第i个素数。现任给两个正整数M≤N≤104,请输出PM到PN的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从PM到PN的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27输出样例:...
2019-03-28 19:11:39
254
原创 PATB1012 数字分类
1012数字分类(20分)给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字:A1= 能被 5 整除的数字中所有偶数的和; A2= 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算n1−n2+n3−n4⋯; A3= 被 5 除后余 2 的数字的个数; A4= 被 5 除后余 3 的数字的平均数,...
2019-03-28 18:22:07
198
原创 PATB1011 A+B和C
1011A+B 和 C(15分)给定区间 [−231,231] 内的 3 个整数A、B和C,请判断A+B是否大于C。输入格式:输入第 1 行给出正整数T(≤10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。输出格式:对每组测试用例,在一行中输出Case #X: true如果A+B...
2019-03-28 17:15:13
178
原创 PATB1010 一元多项式求导
1010一元多项式求导(25分)设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是...
2019-03-23 20:55:10
275
原创 PATB1009 说反话
1009说反话(20分)给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。输出格式:每个测试用例的输出占一行,输出倒序后的句子。输入样例:...
2019-03-23 19:58:43
210
原创 PATB1008 数组元素循环右移问题
1008数组元素循环右移问题(20分)一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0A1⋯AN−1)变换为(AN−M⋯AN−1A0A1⋯AN−M−1)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输...
2019-03-23 19:13:52
218
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人