![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java面试
我是菜狗救救我
这个作者很懒,什么都没留下…
展开
-
剑指offer:最小的k个数的两种Java解决(冒泡排序与大根堆)
题目输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。方法1,改进后的冒泡排序(时间复杂度为O(n*k))问题分析普通的冒泡排序使用了两层循环,第一层循环遍历了数组中所有的元素,第二层循环比较相邻的元素。如果第一个比第二个大,就交换他们两个。因此,我们并不需要得到所有数组元素的大小排序结果,我们只需要将外循环执行k次即可。注意!!!冒泡排序每一次冒泡最大值(或最小值)都在数组最末端,每一次添加元素时,需要从数组末尾抽取,这时的元原创 2020-09-10 16:19:40 · 218 阅读 · 0 评论 -
Java面试题:单核CPU支持多线程吗?
答案:支持,CPU通过给每个线程分配CPU时间片(时间单元)来实现这个机制。由于CPU频率很高,故时间单元非常短,用户不易察觉。原创 2020-08-16 22:42:34 · 1343 阅读 · 0 评论 -
Java面试题-throw 和 throws的区别
throw 和 throwsthrow:表示方法内抛出某种异常对象如果异常对象是非 RuntimeException 则需要在方法申明时加上该异常的抛出 即需要加上 throws 语句 或者 在方法体内 try catch 处理该异常,否则编译报错执行到 throw 语句则后面的语句块不再执行throws:方法的参数后加上 throws 表示这个方法可能抛出某种异常需要由方法的调用者进行异常处理只有一类异常,抛出的时候方法可以不用声明,就是RuntimeException异常。th原创 2020-08-13 18:28:18 · 504 阅读 · 0 评论