蓝桥杯——数组

news/2024/11/18 0:21:36/

1、移动数组元素

package day3;import java.util.Arrays;public class Demo1 {public static void main(String[] args) {int[] arr = {1,2,3,4,5,6};int k = 2;int[] arr_new = f(arr,k);for (int i : arr_new) {System.out.print(i+",");}//或System.out.println();String str = Arrays.toString(arr_new);System.out.println(str);}private static int[] f(int[] arr, int k) {int n =arr.length;k = k%n;int[] new_arr = new int[n];for (int i = 0; i < arr.length; i++) {new_arr[(i+k) % n] = arr[i];}return new_arr;}
}

结果

2、二维数组求和

package day3;public class Demo3 {public static void main(String[] args) {int [][] arr= {{1,2,3},{4,5,6},{7,8,9}};int result = sum_arr(arr);System.out.println(result);}private static int sum_arr(int[][] arr) {int sum = 0;for (int[] is : arr) {for (int is2 : is) {sum+=is2;}}return sum;}
}

结果

45

3、二维数组x,y轴互换,转置二维矩阵

package day3;public class Demo4 {public static void main(String[] args) {int[][] arr = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };for (int[] is : arr) {for (int is2 : is) {System.out.print(is2 + "\t");}System.out.println();}System.out.println("=======================");int[][] newArr = f(arr);for (int[] is : newArr) {for (int is2 : is) {System.out.print(is2 + "\t");}System.out.println();}}private static int[][] f(int[][] arr) {int row = arr.length;int col = arr[0].length;int[][] newArr = new int[row][col];for (int i = 0; i < newArr.length; i++) {for (int j = 0; j < newArr.length; j++) {newArr[j][i] = arr[i][j];}}return newArr;}
}

结果

4、杨辉三角

package day3;public class Demo2 {public static void main(String[] args) {// TODO Auto-generated method stub//		for (int i = 0; i < 10; i++) {//			for (int j = 0; j < 10; j++) {//				System.out.print("外:"+i+"内:"+j);//			}//			System.out.println();//		}int n = 6; int [][] arr = new int [n+1][n+1];for (int i = 1; i < arr.length; i++) {for (int j = 1; j <=i; j++) {if(i==1||i==j) {arr[i][j]=1;}else {arr[i][j]=arr[i-1][j]+arr[i-1][j-1];}}}for (int i = 1; i < arr.length; i++) {for (int j = 1; j <=i; j++) {System.out.print(arr[i][j]+",");}System.out.println();}	}
}

结果

eclipse常用快捷键

alt+/  :常用方法

ctrl+1:补全代码

5、在数组中寻找特定值

数组的每行从左到右升序排列,每列从上到下升序排列。

package day3;public class Demo5 {public static void main(String[] args) {int[][] arr = { { 1, 4, 7 }, { 2, 5, 8 }, { 3, 6, 9 } };boolean isf = f(arr,5);System.out.println(isf);}private static boolean f(int[][] arr, int num) {if(arr == null || arr[0].length == 0 || arr.length == 0) {return false;}for (int[] is : arr) {int start = 0;int end = arr.length-1;while(start<=end) {int mid =start+(end-start)/2;if(is[mid]==num) {return true;}else if(is[mid]>num) {end = mid - 1;}else {start = mid +1;}}}return false;}}

结果

true


http://www.ppmy.cn/news/1547841.html

相关文章

vue3中pinia状态管理库使用以及持久化配置方法总结

在 Vue 3 中&#xff0c;Pinia 是一个状态管理库&#xff0c;旨在替代 Vuex&#xff0c;提供更简单和更直观的 API。Pinia 支持 TypeScript&#xff0c;且其设计更符合 Vue 3 的组合式 API。 安装 Pinia 首先&#xff0c;你需要安装 Pinia和pinia-plugin-persistedstate。可以…

Qt/C++ 开源控件 可折叠的标签管理控件

在 Qt 开发中&#xff0c;许多项目需要处理标签管理功能&#xff0c;例如分类管理、标签筛选等需求。本文将分享如何利用 Qt/C 实现一个具备动态增删标签、展开折叠功能的控件。此控件由 TagWindow 和 TagItemWidget 两个类组成&#xff0c;前者负责整个标签管理窗口的布局与逻…

git配置用户信息

在 Git 中配置用户信息&#xff0c;主要是设置你的用户名和电子邮件地址&#xff0c;这些信息会被 Git 用来记录提交的作者信息。以下是配置用户信息的步骤&#xff1a; 打开命令行工具。 设置你的用户名&#xff1a; git config --global user.name "你的名字"例如…

onlyoffice Command service(命令服务)使用示例

一、说明 文档在这里&#xff1a;https://api.onlyoffice.com/docs/docs-api/additional-api/command-service/ 命令服务提供有几个简单的接口封装。也提供了前端和后端同时操作文档的可能。 二、正文 命令服务地址&#xff1a;https://documentserver/coauthoring/Com…

【再谈设计模式】抽象工厂模式~对象创建的统筹者

一、引言 在软件开发的世界里&#xff0c;高效、灵活且易于维护的代码结构是每个开发者追求的目标。设计模式就像是建筑蓝图中的经典方案&#xff0c;为我们提供了应对各种常见问题的有效策略。其中&#xff0c;抽象工厂模式在对象创建方面扮演着重要的角色&#xff0c;它如同一…

Linux系统制作Java JAR程序为系统服务

在Linux系统中&#xff0c;将JAR程序制作成系统服务可以通过系统自带的systemd服务管理器来实现。systemd是现代Linux系统中广泛使用的初始化系统和服务管理器&#xff0c;它提供了强大的功能来管理系统的启动和服务。 以下是将JAR程序制作成systemd系统服务的步骤&#xff0c…

2024-11-16 特殊矩阵的压缩存储

一、数组的存储结构 1.一维数组&#xff1a;各元素大小相同&#xff0c;且物理上连续存放。a[i]起始地址i*siezof(数组元素大小) 2.二维数组&#xff1a;b[j][j]起始地址&#xff08;i*Nj&#xff09;*sizeof(数组元素大小) 二、特殊矩阵 1.普通矩阵的存储&#xff1a;使用…

酷炫的鼠标移入效果(附源码!!)

预览效果 源码(htmljs部分) <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title>…