ZOJ 3490 没有题解. 一句话,要么贴代码,要么自己打. #include<cstdio> #include<iostream> #include<vector> #include<set> #include<map> #include<math.h> #include<queue> #include<stdlib.h> #include<cstring> #include<algori…
死磕以太坊源码分析之EVM固定长度数据类型表示 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习. 翻译自 https://medium.com/@hayeah/diving-into-the-ethereum-vm-part-2-storage-layout-bc5349cb11b7 我们先看一个简单的Solidity合约的汇编代码: contract C { uint256 a; func…
死磕以太坊源码分析之EVM动态数据类型 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习. Solidity提供了在其他编程语言常见的数据类型.除了简单的值类型比如数字和结构体,还有一些其他数据类型,随着数据的增加可以进行动态扩展的动态类型.动态类型的3大类: 映射(Mappings):mapping(bytes32 => uint256), mapping(address => strin…
死磕以太坊源码分析之EVM如何调用ABI编码的外部方法 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习. 前言 abi是什么? 前面我们认识到的是智能合约直接在EVM上的表示方式,但是,比如我想用java端程序去访问智能合约的某个方法,难道让java开发人员琢磨透汇编和二进制的表示,再去对接? 这明显是不可能的,为此abi产生了.这是一个通用可读的json格式的数据,任何别的客户端开发人员或…
在开发中有遇到很简单的SQL却执行的非常慢,甚至只查询一行数据. 咔咔遇到的只有两种情况,一种是MySQL服务器CPU占用率很高,所有的SQL都执行的很慢直到超时,程序也直接502,另一种情况是行锁造成的锁等待. 接下来咔咔带领大家看看各种为难SQL执行的场景,本期文章带大家再熟悉一下MySQL中的锁 最新文章 死磕MySQL系列总目录 什么?还在用delete删除数据<死磕MySQL系列 九> MySQL统计总数就用count(*),别花里胡哨的<死磕MySQL系列 十> 为什么…
[死磕 Java 并发]系列是 LZ 在 2017 年写的第一个死磕系列,一直没有做一个合集,这篇博客则是将整个系列做一个概览. 先来一个总览图: [高清图,请关注"Java技术驿站"公众号,回复:脑图JUC] [死磕Java并发]-–深入分析synchronized 的实现原理 synchronized 可以保证方法或者代码块在运行时,同一时刻只有一个方法可以进入到临界区,同时它还可以保证共享变量的内存可见性.深入分析 synchronized 的内在实现机制,锁优化.锁升级过程.…
死磕 Fragment 的生命周期 本文原创,转载请注明出处.欢迎关注我的 简书 ,关注我的专题 Android Class 我会长期坚持为大家收录简书上高质量的 Android 相关博文.本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 本文例子中 github 地址:github BuzzerBeater 项目链接(第一个开源项目,目前在逐步更新一些知识点,希望对你有所帮助) 曾经在北京拥挤的13号线地铁上,一名背着双肩包穿着格子衫带着鸭舌帽脚踏帆布鞋的程序员讲了一句:“我…
[正文]Java类加载器(  CLassLoader ) 死磕 8:  使用ASM,和类加载器实现AOP 本小节目录 8.1. ASM字节码操作框架简介 8.2. ASM和访问者模式 8.3. 用于增强字节码的事务类 8.4 通过ASM访问注解 8.5. 通过ASM注入AOP事务代码 8.6. 实现AOP的类加载器 1.1. 使用类加载器实现AOP 前面讲到,编程过程中,出现了很多需要动态加强字节码的场景:为了性能.统计.安全等等可能的加强,根据实际情况动态创建加强代码并执行. 这次使用asm来…
问题 (1)重入锁是什么? (2)ReentrantLock如何实现重入锁? (3)ReentrantLock为什么默认是非公平模式? (4)ReentrantLock除了可重入还有哪些特性? 简介 Reentrant = Re + entrant,Re是重复.又.再的意思,entrant是enter的名词或者形容词形式,翻译为进入者或者可进入的,所以Reentrant翻译为可重复进入的.可再次进入的,因此ReentrantLock翻译为重入锁或者再入锁. 重入锁,是指一个线程获取锁之后再尝试获…
Java内部类,相信大家都用过,但是多数同学可能对它了解的并不深入,只是靠记忆来完成日常工作,却不能融会贯通,遇到奇葩问题更是难以有思路去解决.这篇文章带大家一起死磕Java内部类的方方面面. 友情提示:这篇文章的讨论基于JDK版本 1.8.0_191 开篇问题 我一直觉得技术是工具,是一定要落地的,要切实解决某些问题的,所以我们通过先抛出问题,然后解决这些问题,在这个过程中来加深理解,最容易有收获. so,先抛出几个问题.(如果这些问题你早已思考过,答案也了然于胸,那恭喜你,这篇文章可以关掉了…