摘要: 机器人的运动范围 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38), 阅读全文
posted @ 2020-03-10 18:11 别再闹了 阅读(63) 评论(0) 推荐(0)
摘要: 矩阵中的路径 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 \begin{bmatrix} a & 阅读全文
posted @ 2020-03-10 17:52 别再闹了 阅读(135) 评论(0) 推荐(0)
摘要: Java八大基本数据类型及其数组形式中元素的默认值 | 数据类型 | 初始值 | | | | | byte | 0 | | short | 0 | | int | 0 | | long | 0L | | char | 'u0000' | | float | 0.0f | | double | 0 | 阅读全文
posted @ 2020-03-10 17:44 别再闹了 阅读(166) 评论(0) 推荐(0)
摘要: 滑动窗口的最大值 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2, 阅读全文
posted @ 2020-03-10 17:21 别再闹了 阅读(139) 评论(0) 推荐(0)
摘要: Java里把int基本类型变成Integer包装类,有啥用? 作者:大宽宽 链接:https://www.zhihu.com/question/375456014/answer/1063333033 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 这是Java(或者 阅读全文
posted @ 2020-03-10 16:36 别再闹了 阅读(517) 评论(0) 推荐(0)
摘要: Java 集合系列 17 之 TreeSet 详细介绍 (源码解析) 和使用示例 概要 这一章,我们对 TreeSet 进行学习。 我们先对 TreeSet 有个整体认识,然后再学习它的源码,最后再通过实例来学会使用 TreeSet。内容包括: "第 1 部分 TreeSet 介绍" "第 2 部分 阅读全文
posted @ 2020-03-10 16:28 别再闹了 阅读(337) 评论(0) 推荐(0)
摘要: java 中 native 的用法 前言: 在查看 Thread.java 文件时,发现有一个 方法比较特殊 private native void start0(); 概念: native 关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如 C 和 C++) 阅读全文
posted @ 2020-03-10 15:57 别再闹了 阅读(768) 评论(0) 推荐(0)
摘要: 本文是对 "该博文" 的延伸 为什么CopyOnWriteArrayList 可以不使用checkForComodification()呢? 首先,CopyOnWriteArrayList 的迭代器在创建时是将数组中的元素复制了一遍的 然后,CopyOnWriteArrayList 的add等操作也 阅读全文
posted @ 2020-03-10 12:11 别再闹了 阅读(562) 评论(0) 推荐(0)
摘要: Java 并发编程:volatile 关键字解析 volatile 这个关键字可能很多朋友都听说过,或许也都用过。在 Java 5 之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在 Java 5 之后,volatile 关键字才得以重获生机。 volatile 关键字虽 阅读全文
posted @ 2020-03-10 11:45 别再闹了 阅读(137) 评论(0) 推荐(0)
摘要: 多线程真的会使用CPU所有的内核吗? 结论: 线程的调度是根据cpu的算法,如果线程的运算量不大,cpu算法调度线程不一定会平均分配给每个内核的。 学习多线程的时候,我们都知道如果多个线程分配到CPU多个内核是可以并发的执行。但真的是这样的吗? 先来看看电脑配置: 测试电脑是单CPU,4核。按道理来 阅读全文
posted @ 2020-03-10 10:59 别再闹了 阅读(731) 评论(0) 推荐(0)
摘要: java 自带的监控工具 VisualVM 注:在Linux中,该工具的打开方式是在终端输入jvisualvm VisualVM 是一款免费的,集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优。这些功能包括生成和分析海量数据、跟踪内存泄漏 阅读全文
posted @ 2020-03-10 10:57 别再闹了 阅读(4506) 评论(0) 推荐(0)
摘要: Java 集合系列 04 之 fail fast 总结 (通过 ArrayList 来说明 fail fast 的原理、解决办法) 概要 前面,我们已经学习了 "ArrayList" 。接下来,我们以 ArrayList 为例,对 Iterator 的 fail fast 机制进行了解。内容包括:: 阅读全文
posted @ 2020-03-10 10:37 别再闹了 阅读(118) 评论(0) 推荐(0)
摘要: Java 集合系列 10 之 HashMap 详细介绍 (源码解析) 和使用示例 注:文末有第二部分,对哈希原理等做了进一步阐述 概要 这一章,我们对 HashMap 进行学习。 我们先对 HashMap 有个整体认识,然后再学习它的源码,最后再通过实例来学会使用 HashMap。 转载请注明出处: 阅读全文
posted @ 2020-03-10 10:20 别再闹了 阅读(188) 评论(0) 推荐(0)
摘要: Java transient 关键字 transient:瞬 态 1. transient 的作用及使用方法 我们都知道一个对象只要实现了 Serilizable 接口,这个对象就可以被序列化,java 的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了 Se 阅读全文
posted @ 2020-03-10 10:00 别再闹了 阅读(145) 评论(0) 推荐(0)
摘要: 为什么JDK建议使用ArrayDeque实现栈 首先,先说为什么不建议使用Stack这个实现类: https://www.xttblog.com/?p=3416 前面我已经写过一篇关于 Stack(栈) 的文章了《 "吃多了拉就是队列,吃多了吐就是栈" 》。鉴于网上关于 Stack 的文章众多,但大 阅读全文
posted @ 2020-03-10 00:38 别再闹了 阅读(3244) 评论(0) 推荐(2)
摘要: ArrayDeque解析 前言 Java 里有一个叫做 Stack 的类,却没有叫做 Queue 的类(它是个接口名字)。当需要使用栈时,Java 已不推荐使用 Stack ,而是推荐使用更高效的 ArrayDeque ;既然 Queue 只是一个接口,当需要使用队列时也就首选 ArrayDeque 阅读全文
posted @ 2020-03-10 00:32 别再闹了 阅读(234) 评论(0) 推荐(0)
摘要: Java 集合系列 07 之 Stack 详细介绍 (源码解析) 和使用示例 概要 学完 "Vector" 了之后,接下来我们开始学习 Stack。Stack 很简单,它继承于 Vector。学习方式还是和之前一样,先对 Stack 有个整体认识,然后再学习它的源码;最后再通过实例来学会使用它。内容 阅读全文
posted @ 2020-03-10 00:29 别再闹了 阅读(404) 评论(0) 推荐(0)
摘要: Java 集合系列 06 之 Vector 详细介绍 (源码解析) 和使用示例 概要 学完 "ArrayList" 和 "LinkedList" 之后,我们接着学习 Vector。学习方式还是和之前一样,先对 Vector 有个整体认识,然后再学习它的源码;最后再通过实例来学会使用它。 "第 1 部 阅读全文
posted @ 2020-03-10 00:05 别再闹了 阅读(188) 评论(0) 推荐(0)