- 博客(13)
- 资源 (14)
- 收藏
- 关注
原创 《剑指Offer》查找和排序——旋转数组中的最小数字
题目: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:旋转之后的数组实际上可以划分成两个有序的子数组:前面子数组的大小都大于后面子数组中的元素 注
2017-03-23 19:41:27 1053
原创 《剑指Offer》位运算——求二进制数中1的个数
题目: 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。思路:如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。其余所有位将不会受到影响。举个例子:一个二进制数1100,从右边数起第三位是处于最右边的一个1。减去1后,第三位变成0,它后面的两位0变成了1
2017-03-22 22:48:01 1339 12
转载 Java IO流学习总结
Java流操作有关的类或接口流的概念和作用IO流的分类字符流和字节流输入流和输出流Java IO流对象输入字节流InputStream输出字节流OutputStream字节流的输入与输出的对应字符输入流Reader字符输出流Writer字符流的输入与输出的对应字符流与字节流转换File类RandomAccessFile类Java流操作有关的类或接口:Java流类图结构:流
2017-03-22 20:47:19 1397
原创 《剑指Offer》递归和循环——矩形覆盖
题目: 我们可以用 2*1 的小矩形横着或者竖着去覆盖更大的矩形。请问用 n 个 2*1 的小矩形无重叠地覆盖一个 2*n 的大矩形,总共有多少种方法?代码:RectCover.javapublic class RectCover{ public int RectCover(int target) { if (target <= 0) { re
2017-03-20 23:09:22 983 3
原创 《剑指Offer》递归和循环——跳台阶
题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路 首先我们考虑最简单的情况。如果只有1个台阶,那么显然只有一种跳法;如果是2级台阶,那么有2种跳法。 对于一个有n级台阶的楼梯来说,我们设跳法为 f(n) ,假如我们先跳1个台阶,则剩下有 n-1 个台阶,跳法为 f(n-1) 次, 假如我们先跳2个台阶,则剩下 n-2 阶,跳法
2017-03-17 22:26:10 1147 4
原创 《剑指offer》栈和队列——用两个栈实现一个队列
题目 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路 将一个栈作为压入栈 ( stackPush ),在压入数据时只往该栈压入,另外一个栈作为弹出栈,在弹出数据时只从这个栈弹出 ( stackPop )。 因为栈的特点是:先进后出,所以先将所有数据逐一压入 stackPush 栈中,然后再将所有数据从栈 stackPush 顶到栈底逐一压
2017-03-17 21:02:07 875 5
原创 《剑指offer》数组——二维数组中查找
题目: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路: 利用二维数组由上到下,由左到右递增的规律, 那么选取右上角或者左下角的元素 arr[row][col] 与 target 进行比较 这里就选右上角元素,当 target < arr[0][c
2017-03-13 20:24:13 575
原创 《剑指Offer》递归和循环——斐波那契数列
题目: 大家都知道斐波那契数列(0、1、1、2、3、5、8、13、21、……), 现在要求输入一个整数n,请你输出斐波那契数列的第n项。主要算法:public int Fibonacci(int n){ int a=1,b=1,c=0; //对n进行判断 if (n <= 0){ return 0;
2017-03-12 23:03:46 656
原创 JVM性能调优监控工具jps、jstack、jmap、jhat、jstat等使用详解
javap 和 javacjavap -helpjavac -helpjpsjps -helpjstackjstack -helpjstat参考文章jmapjmap -helpjinfojconsolejvisualvmjhatjdbjstatdjavap 和 javacjavac -verbose 类名.javajava -verbose 类名javap
2017-03-12 20:19:48 20789 2
原创 《剑指Offer》替换空格(将字符串中的空格替换为%20)
题目: 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为 We Are Happy.则经过替换之后的字符串为 We%20Are%20Happy。思路:这种替换问题要考虑是否会覆盖原字符串,若是在源字符串上直接替换。看到这个问题我觉得很多人都会想到直接从头开始替换,即遇到空格就将其替换为%20,每次都要将空格后的字符后移两个字节。这种解法的时间复杂度为O(n^2)!!!另外
2017-03-12 11:10:01 3137 6
原创 一道值得思考的数据结构题目(入栈与出栈序列)
就业指导课上做的一道数据结构中有关栈的题目,当时一开始自己思考不全面,错选了。一个栈的入栈序列为1,2,3,…,n ,其出栈序列是 p 1 ,p 2 ,p 3 ,…p n 。若p 2 = 3,则 p 3 可能取值的个数是()A:n -3B:n - 2C:n - 1D:无法确定答案:C ( n - 1)个看了别人的一些解析,觉得不够完善,下面给出自己的见解。首先,栈的先进后出原则大家应该是知道的。
2017-03-08 19:20:53 3522 3
原创 JetBrains IDE/Android Studio 翻译插件,支持中英互译、单词朗读。
推荐一款比较实用的插件。TranslationPluginJetBrains IDE/Android Studio 翻译插件,支持中英互译、单词朗读。安装兼容除 MPS 外所有产品编译号为143以上的 Jetbrains IDE 产品。支持的 IDE: - Android Studio - IntelliJ IDEA - IntelliJ IDEA Community Edition -
2017-03-02 20:53:58 5219 3
原创 程序员必备利器—Java程序性能分析工具Java VisualVM(Visual GC)
程序员必备利器——Java程序性能分析工具Java VisualVM(Visual GC)VisualVM 是一款免费的\集成了多个JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优。这些功能包括生成和分析海量数据、跟踪内存泄漏、监控垃圾回收器、执行内存和 CPU 分析,同时它还支持在 MBeans 上进行浏览和操作。在内存分析上,Java Visua
2017-03-01 22:02:17 2669 1
Flink 全网最全资源(视频、博客、PPT、入门、原理、实战、性能调优、源码解析、问答等持续更新)
2019-10-25
Flink源码解析.zip
2019-06-04
Flink 全网最全资源(视频、博客、PPT、入门、实战、源码解析、问答等持续更新).md
2019-06-04
Distributed.Systems.An.Algorithmic.Approach.2nd.Edition
2018-10-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人