摘要:
二维前缀和 一维前缀和比较好理解,例如,对于数组 1,2,3,4,5 来说,第k个前缀和为前k个数的和, 即为 :1,3,6,10,15。 什么是二维前缀和呢? 设二维数组的A的大小为m*n,行下标的范围为[1,m],列范围为[1, n]。数组P是A的前缀和数组,则有: 如果 i 和 j 中至少有一 阅读全文
摘要:
对比 在深度优先和广度优先遍历时,我们经常需要从一个点向上下左右四个方向遍历,因此也就有了如下代码: 注意对比遍历的坐标: public class TestString { public static int[][] dir = {{1, 0}, {-1, 0}, {0, -1}, {0, 1}} 阅读全文
摘要:
Stream 是java8 中一个重要的特性,通过stream可以快速的处理集合和其他顺序元素。 java8 基本流 流主要和集合对象一起使用,而不是基本类型。 为了避免不必要的拆箱和装箱,Java8引入了三个原始类型特化流接口:Intstream,LongStream和Doublestream,将 阅读全文
摘要:
我们在代码开发的过程中,经常会遇到这样的写法: 1 Map<String, Integer> map = new HashMap(); 2 3 List<String> list=new ArrayList<String>(); 不知道有没有疑惑过,为什么不直接使用下面的方法呢? 1 HashMap 阅读全文
摘要:
前言 此处是简单的map和String的使用方法,记录下来是因为Python和java写串了,因此记录下来提个醒; String 的遍历 代码1 1 public class TestString { 2 static String s = "hello world"; 3 4 static voi 阅读全文
摘要:
事务的特性 ACID(Atomicity、Consistency、Isolation、Durability,即原子性、一致性、隔离性、持久性) 隔离性与隔离级别 多事务同时执行的时候,可能会出现的问题: 脏读:两个事务,一个事务读取另一个事务未提交的值,之后写事务回滚,导致读事务再去读取的时候,数据 阅读全文
摘要:
前言 对于更新语句来说,流程是和查询语句是一样的,同样要经过连接器,分析器,优化器,执行器。 mysql> update T set c=c+1 where ID=2; 不一样的是,更新流程还涉及到两个日志模块: redo log(重做日志) binlog(归档日志) redo log WAL WA 阅读全文
摘要:
MySQL的基础架构示意图 大概来说,MySQL可以分成sever层和存储引擎层两部分。 Sever层包括连接器,查询缓存、分析器,优化器和查询器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器 阅读全文
摘要:
应用层: http协议:超文本传输协议, TCP 端口号80, 常用的还有8080、8081、9080 https:443/tcp 443/udp SOCKS: 代理协议, 常用端口号8080 FTP:文件传输协议 20 数据传输 21 控制指令传输,选用TCP连接 telnet:远程登录,常用端口 阅读全文
摘要:
前言 对称加密和非对称加密只能解决通信过程中的对话安全问题,但是仅有机密性,是不够的。 黑客虽然拿不到会话密钥,无法破解密文,但可以通过窃听收集到足够多的密文,再尝试着修改、重组后发给网站。因为没有完整性保证,服务器只能“照单全收”,然后他就可以通过服务器的响应获取进一步的线索,最终就会破解出明文。 阅读全文