
总结
长门有一
23333333333333333333333
展开
-
2-29号 牛客刷题
volatile关键字 Java中的volatile关键字的功能 volatile是java中的一个类型修饰符。它是被设计用来修饰被不同线程访问和修改的变量。如果不加入volatile,基本上会导致这样的结果:要么无法编写多线程程序,要么编译器 失去大量优化的机会。 1,可见性 可见性指的是在一个线程中对该变量的修改会马上由工作内存(Work Memory)写回主内存(Main Memory),所...原创 2019-03-29 21:07:51 · 257 阅读 · 0 评论 -
顺丰2019秋招Java客观题总结
二叉排序树 二叉排序数的(递归)定义: 1、若左子树非空,则左子树所有节点的值均小于它的根节点; 2、若右子树非空,则右子树所有节点的值均大于于它的根节点; 3、左右子树也分别为二叉排序树。 排序算法 快排不适合对基本有序的数据集合进行排序,快排越是无序效率越高。基本有序是O(n2),归并是 nlogn,直接是 n 堆排序、选择排序、冒泡排序、快速排序、的时间复杂度为:nlogn、n2、n2、nl...原创 2019-03-29 10:24:44 · 823 阅读 · 0 评论 -
关于递归的小技巧
递归 递归的三大要素 第一要素:明确函数想要干什么 首先需要明确,这个函数的功能是什么,需要完成什么事情 例如,计算n的阶乘,那么函数为 // 算 n 的阶乘(假设n不为0) int f(int n){ } 第二要素:寻找递归结束的条件 递归就是在函数内部的代码里面,调用自己的本身,那么需要有一个结束的条件,来结束无止境调用自己。 即参数为XXX时,递归结束,把结果返回,这个时...原创 2019-06-08 14:59:03 · 787 阅读 · 0 评论 -
关于MACOS配置java开发环境的问题
关于MACOS配置java开发环境的问题 JDK JDK可以通过去网上下载安装包直接安装,重点在于配置环境变量 从OS X 10.5开始,Apple引入了一个命令行工具(/ usr / libexec / java_home),该工具可动态查找当前用户在Java Preferences中指定的顶级Java版本。因此配置JDK只需要 #使用任意编辑器打开 〜/ .bash_profile #添加 e...原创 2019-07-20 11:05:56 · 321 阅读 · 0 评论 -
正则表达式-字符串中抽取数字并判断次数
今天的老虎证券第一道编程题,从字符串中抽取数字并判断次数。由于对正则表达式不熟悉卡关了。。。考试完后学习了一下,解决了这个问题。直接进入正题吧。 * 学习笔记: * 字符表示: * .表示任意字符 * \d 表示数字 * \D 表示非数字 * \s 表示非空字符 * \S 表示为空字符串 * \w 表示为字母、数字、下划线 * \W 表示不是字母、数字、下划线 *...原创 2019-08-18 22:28:55 · 524 阅读 · 0 评论 -
关于比较器的小技巧
在写算法题的时候,经常会使用到优先队列PriorityQueue,此时需要构建一个比较器Comparator,如果能借助java的API快速的构建一个比较器实现优先队列,能够使自己的代码更加简练。下面是常见的比较器写法: 最常见的两个比较器写法 PriorityQueue<Integer> min = new PriorityQueue<>(Comparator.natur...原创 2019-09-01 18:09:48 · 371 阅读 · 0 评论