活动地址:CSDN21天学习挑战赛

🌈刷题,面试,求职,快来牛客网一起成为offer收割机!🌈
目录
实现一个方法 , 以数组为参数, 循环将数组中的每个元素 乘以 2 , 并设置到对应的数组元素上. 例如 原数组为 {1, 2, 3}, 修改之后为 {2, 4, 6}
- public class Main{
- public static void main(String[] args) {
- int[] array ={1,2,3};
- func(array);
- System.out.println(Arrays.toString(array));
- }
- public static void func(int[] array) {
-
- for (int i = 0; i < array.length; i++) {
- array[i] = array[i]*2;
- }
-
- }
- }

实现一个方法 avg, 以数组为参数, 求数组中所有元素的平均值(注意方法的返回值类型).
- public class Main{
- public static double avg(int[] array) {
- int sum = 0;
- for (int i : array) {
- sum = sum + i;
- }
- return sum * 1.0 / array.length;
- }
- public static void main(String[] args) {
- int[] arr1 = {1, 2, 5, 6, 8, 9, 11};
- System.out.println(avg(arr1));
- }
- }

调整数组顺序使得奇数位于偶数之前。调整之后,不关心大小顺序。
如数组:[1,2,3,4,5,6]
调整后可能是:[1, 5, 3, 4, 2, 6]
- public static void func(int[] array){
- int i= 0;
- int j =array.length-1;
- while(i
- while(i
2 != 0){ - i++;
- }
- while(i
2 == 0){ - j--;
- }
- int tmp = array[i];
- array[i] = array[j];
- array[j] =tmp;
- }
- }

4. 二分/折半查找
- /**
- * 实现二分查找
- * 前提:数组需要排序为有序数组
- * 效率较高
- * 可使用Arrays工具类
- * @param array
- * @param key
- * @return
- */
- public static int binSearch(int[] array,int key){
- int mid = 0;
- int left = 0;
- int right = array.length-1;
- while (left<=right){
- mid =(left +right)>>>1;
- if(key>array[mid]){
- left = mid+1;
- }else{
- if(key
- right = mid -1;
- }else {
- return mid;
- }
- }
- }
- return -1;
- }
- public static void main(String[] args) {
- int[] arr2 = {1, 2, 5, 6, 8, 9, 11};
- Arrays.sort(arr2);//默认升序,底层快排
- System.out.println(Arrays.binarySearch(arr2, 9));
- //使用Arrays工具类
- System.out.println(binSearch(arr2, 9));
- }

5. 两数之和
- class Solution{
- public static int[] func3(int[] array, int target) {
- int[] ret = new int[2];
- for (int i = 0; i < array.length; i++) {
- for (int j = 0; j < array.length; j++) {
- if (array[i] + array[j] == target&&i!=j) {
- ret[0] = i;
- ret[1] = j;
-
- }
- }
- }
- return ret;
- }
- }
6. 只出现一次的数字
- class Solution{
- public static int fun(int[] array) {
- int ret = 0;
- for (int i = 0; i < array.length; i++) {
- ret = ret ^array[i];
- }
- return ret;
- }
- }
7. 冒泡排序
- public static void bubbleSort(int[] array) {
- for (int i = 0; i < array.length; i++) {
- boolean flag = true;
- int j = 0;
- for (j = 0; j < array.length - i - 1; j++) {
- if (array[j] > array[j + 1]) {
- int tmp = array[j];
- array[j] = array[j + 1];
- array[j + 1] = tmp;
- flag = true;
- }
- }
- if (flag == false){
- return;
- }
- }
- }
-
- public static void main5(String[] args) {
- int[] arr5 = {9, 2, 5, 7, 8, 15, 11};
- bubbleSort(arr5);
- System.out.println(Arrays.toString(arr5));
- }
- }

8. 数组逆序
- /**
- * 数组的逆序
- * @param array
- */
- public static void reverse(int[] array){
- int right = array.length-1;
- int left = 0;
- while(left
- int tmp = array[left];
- array[left] = array[right];
- array[right] = tmp;
- left++;
- right--;
- }
- }
- public static void main(String[] args) {
- int[] arr3 = {1, 2, 5, 6, 8, 9, 11};
- reverse(arr3);
- System.out.println(Arrays.toString(arr3));
- }

💖如果文章对你有帮助,请多多点赞、收藏、评论、关注支持!!💖

-
相关阅读:
喜讯 | 智安零信任安全项目入选信通院“安全守卫者计划”优秀案例
Rust如何开发eBPF应用?(一)
git简介和指令
MacOS新功能“通用控制”,多台设备操作互联太方便了!
「Verilog学习笔记」优先编码器Ⅰ
27_Git&GitHub
【Python基础】高级数据类型:初识 “列表” || 列表的增删改查 || del关键字 || 列表的定义
以技术面试官的经验分享毕业生及三年以下的程序员通过面试的技巧
业绩下滑、股价大跌,芯片厂商如何越过寒冬?
振弦采集模块(智能振弦传感器测量模块)其它常见问题
-
原文地址:https://blog.csdn.net/m0_56361048/article/details/126433235