面试
王者丶丿风范
亦是习惯,亦是信仰
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。如果K>数组的长度,那么返回一个空的数组
给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。如果K>数组的长度,那么返回一个空的数组 示例1 输入 复制 [4,5,1,6,2,7,3,8],4 返回值 复制 [1,2,3,4] 用list做数据结构,利用其add(index,value)的自移动特性减少循环手工移动数据操作,使用插入排序排序排序整个数组后取前ki个数放入新的list中实现获取最大的k值。 import java.util.*; public cla原创 2021-03-19 16:23:42 · 1985 阅读 · 2 评论 -
旋转图像 及其解答
给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例 1: 给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋转输入矩阵,使其变为: [ [7,4,1], [8,5,2], [9,6,3] ] 示例 2: 给定 matrix ...原创 2020-03-22 12:35:02 · 333 阅读 · 0 评论 -
给定一个未排序的整数数组,找出其中没有出现的最小的正整数。
给定一个未排序的整数数组,找出其中没有出现的最小的正整数。 示例 1: 输入: [1,2,0] 输出: 3 示例 2: 输入: [3,4,-1,1] 输出: 2 示例 3: 输入: [7,8,9,11,12] 输出: 1 说明: 你的算法的时间复杂度应为O(n),并且只能使用常数级别的空间。 这是一道简单题 解法如下 思路很简单,先排序数组,先保证循环不越界,当 i == nums.le...原创 2020-03-19 09:54:38 · 6583 阅读 · 5 评论 -
mysql的几种日志工作原理
mysql的几种日志工作原理 redo log InnoDB引擎层日志,属于物理日志,从5.5.5版本开始加入,记录每次操作的行为,用于宕机恢复。它的空间是固定的, 所以会用完。 binlog server层日志,采用增量写入方式,主要用于备份数据库或恢复数据库 undo log 回滚日志,用于事务提交失败回滚或其他错误回滚。 redo log和binlog的两阶段提交: 在update操作中,s...原创 2020-03-04 21:09:36 · 697 阅读 · 0 评论 -
磁盘调度算法
磁盘调度算法 来自不同进程的磁盘 I/ 0 请求会构成一个随机分布的请求队列。 磁盘 I/ 0 调度的主要目标就是减少请求队列中对应的平均柱面定位时间。 目前常用的磁盘调度算法有: 先来先服务 最短寻道时间优先 扫描算法 循环扫描算法。 先来先服务算法( First Come First Served, FCFS) 算法 这是一种最简单的磁盘调度算法,它根据进程请求访问磁盘的先后次序进 行调度...转载 2020-03-04 11:46:40 · 532 阅读 · 0 评论 -
页面置换算法
页面置换算法 1. 总述 为提高内存利用率,解决内存供不应求的问题,更加合理的使用内存,人们创造了分页式内存抽象。同时有一个虚拟内存的概念,是指将内存中暂时不需要的部分写入硬盘,看上去硬盘扩展了内存的容量,所以叫做“虚拟”内存。使用虚拟内存,应用程序可以使用比实际物理内存更大的内存空间。可以认为这个更大的内存空间就在硬盘上,只有将某一部分需要被用到时,才被写入真实内存;当它暂时不再被用到时,又被写...转载 2020-03-03 23:13:39 · 372 阅读 · 0 评论 -
进程通信方式
进程通信方式 1、管道(BIO) 例举一个我最常用的linux命令 ps -ef|grep java 其中 | 就是管道的意思,它的作用就是把前面的输出 ps -ef(列出所有进程),作为 grep java 的输入。最终完成列出所有包含java字符的进程信息。由于这条竖线是没有名字的,所以它被定义为匿名管道。而且它只能单向传递,所以它也叫单向管道。 如果想创建一个命名管道可以通过 mkfifo...原创 2020-03-03 23:11:53 · 234 阅读 · 0 评论
分享