java面试之数组常见操作

Java中的数组,java开发面试笔试题 我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家。 扫描二维码或搜索下图红色VX号,加VX好友,拉你进【程序员面试学习交流群】免费领取。也欢迎各位一起在群里探讨技术。 数组是在内存中存储相同数据类型的连续的空间 声明一个数组就是在内存空间中划出一串连续的空间 数组名代表的是连续空间的首地址 通过首地址可以依次访问数组所有元素 元素... 阅读详情

写在前面的话

出去面试笔试部分少不了有一道数组题,常见有让你编程找出数组的最大值,数组排序,二分查找等,这些都是面试高频的一个部分,掌握了这个能给我们面试多增加一个胜算。

手写找出数组最大值

public class FindMax {

    public static void main(String[] args) {
        int[] arr = {1, 2, 3,66,23};
        System.out.println(FindMax.getMax(arr));
    }

    public static int getMax(int[] arr) {
        if (arr != null && arr.length > 0) {
            int max = arr[0];
            for (int i = 0; i < arr.length; i++) {
                if (max < arr[i]) {
                    max = arr[i];
                }
            }
            return max;
        }
        return -1;
    }
}

冒泡排序

  /**
     * 原始冒泡排序算法
     * N个数字要排序完成,总共进行N-1趟排序,
     * 每i趟的排序次数为(N-i)次,所以可以用双重循环语句,
     * 外层控制循环多少趟,内层控制每一趟的循环次数
     * 冒泡排序的优点:每进行一趟排序,就会少比较一次,因为每进行一趟排序都会找出一个较大值。
     * 如上例:第一趟比较之后,排在最后的一个数一定是最大的一个数,
     * 第二趟排序的时候,只需要比较除了最后一个数以外的其他的数
     * 同样也能找出一个最大的数排在参与第二趟比较的数后面,
     * 第三趟比较的时候,只需要比较除了最后两个数以外的其他的数,以此类推……也就是说,
     * 没进行一趟比较,每一趟少比较一次,一定程度上减少了算法的量。
     *
     * @param arr
     */
    public static void bubbleSort(int[] arr) {
        // 定义交换变量
        int temp = 0;
        // 外层for循环表示(n-1)趟排序
        for (int i = 0; i < arr.length - 1; i++) {
            // 内循环表示一趟排序需要排序的次数,因最后一个是最大数值无需比较,所以这里-i
            for (int j = 0; j < arr.length - 1 - i; j++) {
                if (arr[j] > arr[j + 1]) {
                    temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }

选择排序


    public static int[] selectSort(int[] arr) {
        if (arr != null && arr.length > 0) {
            int temp = 0;
            for (int i = 0; i < arr.length - 1; i++) {
                for (int j = i + 1; j < arr.length; j++) {
                    if(arr[i]>arr[j]) {
                        temp=arr[i];
                        arr[i]=arr[j];
                        arr[j]=temp;
                    }
                }

            }
        }
        return arr;
    }

快速排序

 public static int getPivotIndex(int[] arr, int start, int end) {
        int pivot = arr[start];
        int left = start;
        int right = end;
        int index = start;
        while (right >= left) {
            if (arr[right] < pivot) {
                arr[left] = arr[right];
                index = right;
                left++;
                break;
            }
            right--;
        }

        while (right >= left) {
            if (arr[left] > pivot) {
                arr[right] = arr[left];
                index = left;
                right--;
                break;
            }
            left++;
        }

        arr[index] = pivot;
        return index;

    }


    public static void quickSort(int[] arr, int start, int end) {
    	// 递归结束条件
        if (start >= end) {
            return;
        }
        int pivot = getPivotIndex(arr, start, end);
        quickSort(arr, start, pivot - 1);
        quickSort(arr, pivot + 1, end);
    }
Java面试题超详细讲解系列之五【数据结构与算法篇】 图例结合五万字超详细讲解数据结构与算法面试会遇到的那些题 阅读详情

相关推荐

Java - 数组面试题 - 个人整理

数组 - 需要参加面试的人

Java必须掌握的数组(含面试大厂题和源码)

Java在大厂面试中的数组题目经常考查数组的基础操作、算法思想及其应用。这些题目不仅测试你的Java编程能力,也考察你解决问题的思维和算法知识。下面是一些典型的Java数组面试题目,适用于准备大厂面试的候选人。

2302_80314137的博客 1363

ST7789T3与CST816D驱动全解析,面试技巧第11篇:嵌入式面试场景问答 10 连发。

SPI模式下,SCLK、MOSI、CS、DC、RST为必需引脚;8080模式下需连接D0-D7、WR、RD等信号线。CST816D触摸芯片通常通过I2C接口通信,需连接SCL、SDA及INT(中断)引脚。确保电源引脚(VCC、GND)稳定供电,ST7789T3典型工作电压为3.3V。显示异常时检查时序参数,如SPI时钟频率(建议≤40MHz)、数据建立时间。初始化流程需发送一系列命令序列,包括设置像素格式、扫描方向、帧率控制等。扫描方向(MADCTL)可调整显示旋转角度,需根据实际硬件布局配置。

a967gsvj的博客 375

Java【集合面试题】

哈希算法也称为散列算法,是将任意长度的消息压缩到某一固定长度的消息摘要(digest)的过程。哈希函数将一段任意长度的消息转换成一段固定长度的输出,该输出通常称为哈希值、哈希码或摘要。哈希函数可以将消息作为输入,并生成固定长度的哈希值,这个哈希值可以用于数据加密、数据完整性验证、数字签名等各种数据处理领域。哈希函数具有以下特点:哈希函数通常需要满足输入域比输出域大得多,这样可以避免不同的输入产生相同的哈希值(即哈希冲突)。

weixin_43394692的博客 1713

【电磁场与电磁波课程设计】基于HFSS的双频微带天线仿真及设计

第五代移动通信技术(5G)的商用已经近在眼前,作为移动通信中最为重要的功能组件,面向5G通信应用的手机天线与基站天线的技术研究与设计成为近年来的热点。随着移动通信中“跳频”“扩频”等通信技术发展,为了满足与多个终端的通信要求,实现多系统共用和收发共用等功能,这就要求天线在不同频段下工作。根据国家工信部的最新规定,5G移动通信的中频段被划定在3.3 GHz-3.5 GHz及4.8 GHz-5.0 GH,面向5G移动通信的天线应具有高增益、小型化、宽频段及高隔离度等技术特征,以满足5G通信的高传输速率、波束智能

weixin_44450575的博客 1万+

绝缘检测是什么? 绝缘检测原理 绝缘检测检测的是什么?那个量?电压?电流?电阻?

绝缘电阻是电气设备和电气线路最基本的绝缘指标。对于低压电气装置的交接试验,常温下电动机、配电设备和配电线路的绝缘电阻不应低于0.5MΩ(对于运行中的设备和线路,绝缘电阻不应低于1MΩ/kV)。 绝缘电阻的正确测量方法 现代生活日新月异,人们一刻也离不开电。在用电过程中就存在着用电安全问题,在电器设备中,例如电机、电缆、家用电器等。 影响因素 环境温湿度 一般材料的绝缘电阻值随环境温湿度的升高而减小。相对而言,表面电阻(率)对环境湿度比较敏感,而体电阻(率)则对温度较为敏感。 湿度增加,表面泄漏增大,导体电导

dianqicyuyan的博客 2万+

Java——10个关于Java数据类型的面试题

Java——10个关于Java数据类型的面试题

贝尔摩德苦艾酒 9129

量化实战:如何用Barra多因子模型给你的投资组合做一次‘风险体检’?

本文详细介绍了如何利用Barra多因子模型对投资组合进行全面的风险体检,帮助投资者识别行业和风格因子的风险暴露。通过实战案例和Python代码示例,展示了数据采集、风险归因和组合优化的完整流程,提升投资组合的风险调整收益。

weixin_27215337的博客 327

Java(数组)有面试题奥 快来看!!!

1 Arrays.toString(array)数组的打印System.out.println(Arrays.toString(array));如果要给数组排序的话其实用数组方法的第二个方法就很简单 Arrays.toString(array)copyof(要复制的数组,指定新数组的长度)会得到一个新的数组。索引:下标、脚标用来寻找容器里的数据 从0开始,数组的最大索引是数组长度-1。数组的定义:内存空间连续的相同数组类型的集合 引用数据类型。数组的长度:数组名.length(数组中元素的个数)

weixin_71393275的博客 440

加权余量法求解偏微分方程

加权余量法(Weighted Residual Method)是一种数值方法,用于求解偏微分方程(PDEs)。其基本思想是将偏微分方程的残差(或余量)通过加权函数加权,并使加权余量在定义域上为零,从而形成一组代数方程进行求解。

leizhengshenglzs的博客 1793

【图像超分】论文复现:轻量化超分 | 残差特征蒸馏网络RFDN的Pytorch源码复现,跑通源码,整合到EDSR-PyTorch中进行训练,补充CCA的实现!

本文介绍了将RFDN(残差特征蒸馏网络)整合到EDSR-PyTorch框架中的实现过程。主要内容包括:1)环境配置与数据集准备;2)测试源码提供的x4预训练模型,并通过修改图像裁剪函数解决HR与SR尺寸不一致问题;3)训练过程详解,包括将RFDN源码模块整合到EDSR框架中,调整模型参数输入方式。文章还提供了完整的代码实现、训练好的模型权重下载链接,并对RFDN架构进行了详细拆解与注释。通过将RFDN与EDSR相结合,实现了轻量级图像超分辨率重建,获得了PSNR/SSIM等指标及可视化结果。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 433

Java集合常见面试题(二)

ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增长。在添加大量元素前,应用程序可以使用ensureCapacity操作来增加 ArrayList 实例的容量。这可以减少递增式再分配的数量。ArrayList继承于 AbstractList ,实现了 List, RandomAccess, Cloneable, java.io.Serializable 这些接口。

m0_51431003的博客 585

以 Joule 驱动的生成式开发:把需求文档直接变成可运行的 SAP 应用

摘要:SAP BTP的AI助手Joule正在改变开发方式,支持从自然语言描述自动生成数据模型、服务、UI及测试代码。在SAP Business Application Studio中,Joule能根据业务需求生成结构化代码,并提供代码补全、重构、解释等功能。开发者需注意避免上传敏感数据,并对AI生成的代码进行人工审核。Joule特别针对ABAP开发进行了优化,提供符合SAP规范的代码建议,帮助迁移遗留系统。此外,它还能快速生成CAP项目原型,但所有AI生成内容都需经过严格测试验证。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 343

2024年最新【Java笔记】数组的处理方法(详细整理,含注释),最新2024年Java大厂面试经验

经过日积月累, 以下是小编归纳整理的深入了解Java虚拟机文档,希望可以帮助大家过关斩将顺利通过面试。由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示。由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录需要这份系统化的资料的朋友,可以点击这里获取这两个循环的结果是一样的,都是打印从0到4的数值。

2401_84002482的博客 455

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Java算法常见面试题及答案

随着疫情的好转,各大企业公司纷纷开始复工,招聘也将迎来一个高峰。Java程序员想要在这次疫情后,拿到满意的offer,就必须做好充足的准备。众所周知,算法可以说是大厂面试Java程序员的必问面试题。相信算法的重要性大家都了解,好的算法可以让性能得到万倍提升,做到毫秒级处理千万数据的程度。因此,为了提升大家在面试中的底气,本文整理了一些Java程序员算法面试题并比附上了答案,一起来看看吧! Java算法常见面试题及答案1、算法的时间复杂度时候是什么?答案:算法的时间复杂度表示程序运行完成所需的总时间,它通常用

java364100的博客 9594

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

JavaSE: 数组详解

数组是Java中最基本的数据结构,深入理解其特性和操作是编写高效代码的基础。,它在内存中占据连续的存储空间,通过索引快速访问元素。

跟着豪哥学Java 504

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

c++ 二维数组_面试中常见的数据结构与算法题整理,想当架构师,数据结构与算法不过关可不行(数组+字符串,共60题)...

【Java架构师面试网】收集整理了一些Java面试的常见问题,这些问题可能会在你下一次技术面试中遇到。想成为Java架构师,这些都是不可避免也是必须要掌握的哦,对于其他模块的面试题,我后续也将单独分享面试问题和答案。成为Java架构师的这条路道阻且艰,但是既然选择了远方就是选择了风雨兼程,希望大家都能早日圆自己的架构师梦,同样也希望我自己可以~网站近期在备案和迁移服务器,暂时无法打开,先...

weixin_39850787的博客 7832

java 算法题 - 面试中常见的位操作算法题,2024年最新MongoDB面试中常见问题

互联网大厂比较喜欢的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考。无论是哪家公司,都很重视高并发高可用技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。下面有部分截图希望能对大家有所帮助。

2401_84023482的博客 843

Java—数组的定义与使用

蚂蚁面试比较重视基础,所以Java那些基本功一定要扎实。蚂蚁的工作环境还是挺赞的,因为我面的是稳定性保障部门,还有许多单独的小组,什么三年1班,很有青春的感觉。面试官基本水平都比较高,基本都P7以上,除了基础还问了不少架构设计方面的问题,收获还是挺大的。经历这次面试我还通过一些渠道发现了需要大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

2401_83915450的博客 724

JavaSE 数组从入门到面试全解析

本文全面介绍了Java数组的核心知识,包括数组的定义、特点、声明和初始化方式(静态与动态),以及数组的访问、遍历和常见操作(复制、排序、查找)。文章还解答了面试中常见的数组问题,如数组与集合的区别、深浅拷贝、内存存储结构等。作为Java基础数据结构,掌握数组对于理解后续复杂数据结构和算法至关重要。本文既适合初学者系统学习,也能帮助开发者应对技术面试中的数组相关问题。

2301_79536841的博客 1233

java数组的面试题_java数组中有哪些面试题

每个人都会经历大大小小的面试,对于java面试的准备,一定会涉及到几个比较大的模块考点。可以说数组是java中一个独立的模块,其中的知识点已形成了完整的知识架构,在实际考察中会涉及到变量的讨论、算法的实际题目运用等,下面我们就常见的java数组面试题带来分享。一、基础知识1.Java变量一定要初始化吗?不一定。Java数组变量是引用数据类型变量,它并不是数组对象本身,只要让数组变量指向有效的数组对...

weixin_33893979的博客 1493

c++中怎么数组内有用元素的个数_面试中常见的数据结构与算法题整理,想当架构师,数据结构与算法不过关可不行(数组+字符串,共60题)...

【Java架构师面试网】收集整理了一些Java面试的常见问题,这些问题可能会在你下一次技术面试中遇到。想成为Java架构师,这些都是不可避免也是必须要掌握的哦,对于其他模块的面试题,我后续也将单独分享面试问题和答案。成为Java架构师的这条路道阻且艰,但是既然选择了远方就是选择了风雨兼程,希望大家都能早日圆自己的架构师梦,同样也希望我自己可以~网站近期在备案和迁移服务器,暂时无法打开,先...

weixin_42485891的博客 1868

java数组中有哪些面试题

每个人都会经历大大小小的面试,对于java面试的准备,一定会涉及到几个比较大的模块考点。可以说数组是java中一个独立的模块,其中的知识点已形成了完整的知识架构,在实际考察中会涉及到变量的讨论、算法的实际题目运用等,下面我们就常见的java数组面试题带来分享。 一、基础知识 1.Java变量一定要初始化吗? 不一定。Java数组变量是引用数据类型变量,它并不是数组对象本身,只要让数组变量指向有效的数组对象,即可使用该数组变量。对数组执行初始化,并不是对数组变量进行初始化,而是对数组对象进行初始化——也就是.

一直在水些技术小文 402

JAVA 实习面试题大全必看

JAVA 实习面试题大全必看 JavaSE 88 基础语法 9 Q1:简单说说Java有哪些数据类型 答:①分为基本数据类型和引用数据类型。②基本数据类型包括:数值型(byte、short、int、long、float、double),字符型(char)以及布尔型(boolean)。除了基本类型外,其他数据类型都属于引用类型,包括类、接口、数组等。 Q2:float number=3.4;有没有问...

孑桀 2万+

声明和访问控制常见面试题17道

声明和访问控制常见面试题面试题1:选择非法声明语句面试题2:考察数组声明面试题3:如何获得数组大小面试题4:是否可以改变数组大小面试题5:数组索引从几开始面试题6:如何初始化数组面试题7:选择正确的合法声明面试题8:类的声明可否使用private面试题9:如何正确使用this面试题10:Java修饰符问题面试题11:谈谈final和finally和finalize的区别面试题12:final变量可以看作是常量吗面试题13:包含抽象方法的一定是抽象类吗面试题14:标记Java类成员的可访问性修饰符面试题15:

ADbyCool的博客 826
上一篇: java面试之局部变量和成员变量的运算
下一篇: java面试之基本数据类型和包装类型的区别
Galen-gao
博客等级 码龄9年 931粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值