老胖鱼头
老胖鱼头
全部文章
Java面试1...
Java工程师面试1000题(15)
Leetcode(5)
Spark(2)
Spring(1)
Spring系列(3)
大数据相关(18)
未归档(29)
经验记录(2)
归档
标签
去牛客网
登录
/
注册
老胖鱼头的博客
全部文章
/ Java面试1000题
(共19篇)
请描述一下Hadoop的shuffle过程
Hadoop的shuffle过程分为Map端和Reduce端。 Map端:Map端会处理输入数据并产生中间结果,这个中间结果会写到本地磁盘,而不是HDFS。每个Map的输出会先写到内存缓冲区中,当写入的数据达到设定的阈值时,系统将会启动一个线程将缓冲区的数据写到磁盘,这个过程叫做spill。...
2019-07-27
0
563
Java工程师面试1000题226-什么是ABA问题?
226、什么是ABA问题? 上篇博客最后讲到了CAS会导致“ABA问题”,那到底什么是ABA问题呢?下面介绍一下。 CAS算法实现一个重要前提需要取出内存中某一个时刻的数据并在当下时刻做比较和替换。从思想上来说,Synchronized属于悲观锁,悲观地认为程序中的并***况严重,所以严防死守。...
2019-04-25
0
911
Java工程师面试1000题225-CAS原理解析
225、CAS原理解析 在计算机科学中,比较和交换(Conmpare And Swap)是用于实现多线程同步的原子指令。 它将内存位置的内容与给定值进行比较,只有在相同的情况下,将该内存位置的内容修改为新的给定值。 这是作为单个原子操作完成的。 原子性保证新值基于最新信息计算; 如果该值在同一时间...
2019-04-24
0
400
Java工程师面试1000题224-使用递归和非递归实现二叉树的前、中、后序遍历
224、使用递归和非递归实现二叉树的前、中、后序遍历 使用递归来实现二叉树的前、中、后序遍历比较简单,直接给出代码,我们重点讨论非递归的实现。 class Node { public int value; public Node left; public Node ri...
2019-04-12
0
385
Java工程师面试1000题221-Java的指令重排与volatile关键字
221、Java的指令重排与volatile关键字 如果要用一句话来概括volatile关键字的作用,我会这么说:使用volatile关键字,它能够使被修饰的变量在值发生改变时尽快地让其他线程知道。下面我们再来详细解释一下volatile关键字和指令重排。 首先,我们需要知道的是,编译器为了加快...
2019-04-10
0
407
Java工程师面试1000题220-Class.forName 和 ClassLoader 有什么区别?
220、Class.forName 和 ClassLoader 有什么区别? 在 java 中 Class.forName() 和 ClassLoader 都可以对类进行加载。ClassLoader 就是遵循双亲委派模型最终调用启动类加载器,实现的功能是“通过一个类的全限定名来获取描述此类的二进制...
2019-04-09
0
378
Java工程师面试1000题154-冒泡、选择、插入排序
154、冒泡、选择、插入排序 冒泡排序: 冒泡排序重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢...
2019-03-28
0
365
Java工程师面试1000题153-Java8新特性之并行流和串行流
153、Java8新特性之并行流和串行流 并行流就是把一个内容分成多个数据块,并用不同的线程分别处理每个数据块的流。Java8中将并行做了优化,我们可以很容易的对数据进行并行操作。StreamAPI可以声明性的通过parallel()与sequential()在并行流与顺序流之间进行切换。 再说...
2019-03-27
0
382
Java工程师面试1000题151- Java8新特性之Stream API
151、了解Stream API吗?说说它 Java8中有两大最为重要的改变。第一个是Lambda表达式;另外一个是StreamAPI。Stream是Java8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用StreamAPI对集合数据...
2019-03-26
0
481
Java工程师面试1000题150-方法引用和构造器引用
150、说一下什么是方法引用和构造器引用 ①方法引用:若Lambda体中的内容有方法已经实现了,我们可以使用方法引用,可以把方法引用理解为是Lambda表达式的另外一种表现形式。主要有三种语法格式: 对象::实例方法名 类::静态方法名 类::实例方法名 注意: Lam...
2019-03-25
0
504
首页
上一页
1
2
下一页
末页