Compress Althgorim-压缩算法概览
创作原因
不久前,我发现需要一台PNG装载机用于我的一个小项目。作为一个完整的工具,我当然决定自己写一个 - 毕竟,为什么在还有车轮等待重新发明时为自己省力?如果你愿意的话,可以在这里查看inflater代码的来源 - 它写得非常干净。事实上,我专门写它是为了易于阅读,而不是最快的实现。
我当时对Deflate了解不多。我知道它基于LZ系列算法(LZ77 / L7SS等)。我听说有人说它...
2018-11-09 10:55:36 |
Althgorim
Oracle Explain-03-获取 oracle 执行计划实战笔记
docker install oracle
docker-install-oracle
windows11 wsl 安装实战笔记
docker
$ docker --version
Docker version 24.0.5, build 24.0.5-0ubuntu1~22.04.1
下载 oracle
dh@d:~$ docker pull alexeiled/do...
2018-11-08 10:55:36 |
SQL
Oracle Explain-02-查看 oracle 执行计划的几种方式
如何查看
六种执行计划
(1)explain plan for
(2)set autotrace on
(3)statistics_level=all
(4)dbms_xplan.display_cursor获取
(5)事件10046 trace跟踪
(6)awrsqrpt.sql
这 6 种方法,侧重点各不相同。
explain plan for
测试表
create...
2018-11-08 10:55:36 |
SQL
Oracle Explain Oracle 执行计划详解
Oracle Explain
执行计划:一条查询语句在ORACLE中的执行过程或访问路径的描述。即就是对一个查询任务,做出一份怎样去完成任务的详细方案。
如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。
看懂执行计划也就成了SQL优化的先决条件。
通过执行计划定位性能问题,定位后就通过建立索引、修改sql等解决问题。
执行计划的查...
2018-11-08 10:55:36 |
SQL
MySQL explain 性能测试验证记录
测试
场景
测试联合索引的效果。
建表语句
当然,你可以使用 SQL 查询和操作来实现这个目标。以下是一个示例的 SQL 脚本,可以在 MySQL 数据库中执行,来插入 100 万条数据并确保 user_id 相同:
-- 创建 user 表
CREATE TABLE user (
id INT PRIMARY KEY AUTO_INCREMENT,
user_id...
2018-11-08 10:08:03 |
Database
MySQL Explain MySQL 执行计划详解
MySQL Explain
使用explain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的,分析你的查询语句或是表结构的性能瓶颈。
建表测试
user 表
create table `user` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(100) NOT NULL,...
2018-11-08 10:08:03 |
Database
Binary Tree
二叉树
二叉树是树的一种,每个节点最多可具有两个子树,即结点的度最大为2(结点度:结点拥有的子树数)。
常见的二叉树
斜树
所有结点都只有左子树,或者右子树。
满二叉树
所有的分支节点都具有左右节点。
完全二叉树
若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。
二叉树的性质
...
2018-11-07 11:19:25 |
Data Struct
package-info.java
package-info.java
介绍
pacakge-info.java是一个Java文件,可以添加到任何的Java源码包中。
pacakge-info.java的目标是提供一个包级的文档说明或者是包级的注释。
pacakge-info.java文件中,唯一要求包含的内容是包的声明语句,比如:
package com.ch.service;
常见作用
它有三个作用:
...
2018-11-07 10:51:40 |
Java