当前位置: 首页 > news >正文

字节实习面试

1.比左边的数都小,比右边的数都大

在这里插入图片描述

public class Test3 {/*** 从左往右找当前位置往左最小的* 从右往左遍历找当前位置往右最大的* 比较* @param args*/public static void main(String[] args) {
//        int[] arr = new int[]{9,8,7,3,4,2,1};int[] arr = new int[]{3,3,1};int[] a = new int[arr.length];int[]  b= new int[arr.length];findMiddle(arr,a,b);int index=0;for (int i : arr) {if(index==0&&i>b[index]){System.out.print(i+" ");index++;continue;}if(i<a[index]&&i>b[index]){System.out.print(i+" ");}index++;}}static void findMiddle(int[] arr,int[] a,int[] b) {int min=arr[0]; int max=arr[arr.length-1];for (int i=1;i<arr.length;i++){if(min<arr[i-1]){a[i]=min;}else {a[i]=arr[i-1];min=arr[i-1];}}System.out.println(Arrays.toString(a));for (int i=arr.length-2;i>=0;i--){if(max<arr[i+1]){max=arr[i+1];b[i]=arr[i+1];}else{b[i]=max;}}System.out.println(Arrays.toString(b));}
}

2.关闭一个网页,关闭了还能判断在线状态

关闭浏览器后再打开浏览器,cookie仍然记住了之前的session id,就可以自动登录。可以在后端设置session过期时间。

3.hash查找最坏时间复杂度是多少

在JDK1.8之前hashmap采用的是数组+链表的形式,查找效率是O(n)。jdk1.8开始采用数组+红黑树,查找效率是O(logn),链表长度大于8转成红黑树,红黑树节点个数小于6转成链表。

3.进程和线程、协程的区别?

  1. 线程是程序执行的最小单位,而进程是操作系统分配资源的最小单位;
  2. 一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线;
  3. 进程之间相互独立,但同一进程下的各个线程之间共享程序的内存空间(包括代码段、数据集、堆等)及一些进程级的资源(如打开文件和信号),某进程内的线程在其它进程不可见;
  4. 调度和切换:线程上下文切换比进程上下文切换要快得多。
  5. 协程就是用户级线程,一个线程中的多个函数并发执行

4.僵尸进程、孤儿进程是什么意思?

僵尸进程:子进程运行完毕,父进程本应该回收父进程的资源,但是由于某些原因没有回收,这个时候就造成了僵尸进程。

孤儿进程:一个父进程结束,子进程还在运行,将子进程交给init进程。

6.mybatis常见的标签

where:在动态拼接时,去掉1==1的拼接,不然为null情况下,就不能判断sql加不加and了。

if:判断条件。select查询、parameterType映射的实体类,resulttype:sql返回结果映射的实体类

<select id="findByWhere" parameterType="com.qcbyjy.domain.User" resultType="com.qcbyjy.domain.User">select * from user where 1 = 1<if test="username != null and username != ''">and username like #{username}</if><if test="sex != null and sex != ''">and sex = #{sex}</if></select>

foreach标签:拼接or或者in ()语句

7.mybatis比直接写sql的好处?

  • 相对灵活,将sql编写和Java程序分开,降低耦合度。
  • 不需要手动控制开关连接,减少了代码复杂度。
  • 使用xml动态编写sql可以重用。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Qt】如何搭建Qt开发环境
  • C# Deconstruct详解
  • 安卓App开发 篇一:从零开始构建第一个Android应用
  • Java 抽象知识笔记总结(油管)
  • C++:模板初阶与STL简介
  • RabbitMQ 什么语言写的
  • 6 大推荐给开发者的无代码工具
  • Linux驱动开发—设备树传递给内核,匹配驱动过程分析
  • Java多线程-----定时器(Timer)及其实现
  • C++ 异常
  • 基于树莓派的智能家居中控系统:集成Flask、HTML、JavaScript与MQTT协议的文心一言AI接入(代码示例)
  • c语言11天笔记
  • @SpringBootConfiguration重复加载报错
  • 层次分析法(评价类问题)
  • NLP——文本预处理
  • [笔记] php常见简单功能及函数
  • axios 和 cookie 的那些事
  • emacs初体验
  • JavaScript 基本功--面试宝典
  • jquery ajax学习笔记
  • jquery cookie
  • unity如何实现一个固定宽度的orthagraphic相机
  • vagrant 添加本地 box 安装 laravel homestead
  • yii2中session跨域名的问题
  • 阿里研究院入选中国企业智库系统影响力榜
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 前端性能优化——回流与重绘
  • 一道面试题引发的“血案”
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 国内开源镜像站点
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​​​【收录 Hello 算法】10.4 哈希优化策略
  • ​flutter 代码混淆
  • ​虚拟化系列介绍(十)
  • ​学习笔记——动态路由——IS-IS中间系统到中间系统(报文/TLV)​
  • # 飞书APP集成平台-数字化落地
  • #《AI中文版》V3 第 1 章 概述
  • #laravel 通过手动安装依赖PHPExcel#
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (04)odoo视图操作
  • (21)起落架/可伸缩相机支架
  • (3) cmake编译多个cpp文件
  • (SpringBoot)第二章:Spring创建和使用
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)计算机毕业设计SSM保险客户管理系统
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (学习日记)2024.01.09
  • (转载)(官方)UE4--图像编程----着色器开发
  • **python多态
  • .NET 发展历程
  • .net解析传过来的xml_DOM4J解析XML文件
  • .Net小白的大学四年,内含面经
  • /boot 内存空间不够
  • @private @protected @public
  • @property括号内属性讲解