摘要:对于人类来说,字节码文件的可读性远远没有代码高。尽管如此,还是有一些杰出的程序员们创造出了可以用来直接编辑字节码的框架,提供接口可以让我们方便地操作字节码文件,进行注入修改类的方法,动态创造一个新的类等等操作。 引子 在遥远的希艾斯星球爪哇国塞沃城中,两名年轻的程序员正在为一件事情苦恼,程序出问题了,一时看不出问题出在哪里,于是有了以下对话: Debug一下吧。 线上机器,没开Debu...
摘要:底层是链表实现的,对顺序访问进行了优化,插入和删除元素时间复杂度较好,但是随机访问需要遍历元素,所以效率比差。 次序是List最重要的特点;它保证维护元素特定的顺序简单介绍:ArrayList底层的实现是数组,随机访问所以用下标访问的速度比较快,但是插入和删除元素,会有移动元素的开销,所以速度比LinkedList差。LikedList底层是链表实现的,对顺序访问进行了优化,插入和删除...
摘要:允许对非叶结点的两个子节点进行旋转,且允许对多个非叶节点进行子节点的旋转操作。将该操作生成的新字符串成为。现在输入两个字符串,判断该两个字符串是否是。不仅要考虑数组的划分,还要考虑所有可能的旋转。 题目要求 Given a string s1, we may represent it as a binary tree by partitioning it to two non-empt...
摘要:加密算法笔记算法实现在使用中发现,经过加密的字符串如果要进行传输,需要使用进行编码,这样能保证加密信息的完整性,确保将来解密成功。 Java加密算法笔记--DES算法实现 在使用中发现,经过加密的字符串如果要进行传输,需要使用Base64进行编码,这样能保证加密信息的完整性,确保将来解密成功。 import java.security.SecureRandom; import java...
摘要:二分搜索复杂度时间因为整数长度有限空间思路我们知道必定存在这么两个整数和,所以我们要做的其实就是缩小这个的范围。代码牛顿迭代法复杂度时间空间思路更好的解法是用数学方法,牛顿法是非常经典的求解方程的方法。 Sqrt Implement int sqrt(int x). Compute and return the square root of x. 二分搜索 复杂度 时间 O(1) ...