public class shuzu { public static void main (String [] agrs) { / ** * Array-a collection of multiple data // one-dimensional array int a []; int [] b; int arr [] = new int [ 5]; // 동적 할당 int [] arr1 = new int [] {1,2,3,4,5}; // 정적 할당 // 0부터 시작하는 배열 첨자 System.out.println (arr.length); System.out.println (arr1 [1]); System.out.println (arr1 [1 * 2]); System.out.println (arr [1]); // 2 차원 배열 연습 int [] [] arr = 새로운 int [] [] { {3,8,2}, {2,7}, {9,0,1,6} };
int len = arr.length;
int res = 0;
for (int i = 0; i <len; i ++) { int arr0 [] = arr [i]; int llen = arr0.length; for (int j = 0; j <llen; j ++) { res + = arr0 [j]; } } System.out.println (res); * / / ** * 배열과 관련된 일반적인 알고리즘 * 1. 최대 값과 최소값 찾기 배열 요소 수, 합계, 평균 int arr [] = new int [] {1,2,3,4,5,6,7,8}; int max = arr [0]; int min = arr [0]; int sum = 0; int avg; int i; for (i = 0; i <arr.length; i ++) {
if (max <arr [i]) { max = arr [i]; } } System.out.println ( "Maximum :"+ max); for (int j = 0; j <arr.length; j ++) { if (min> arr [j]) { min = arr [j]; } } System.out.println ( "minimum value :"+ min); // sum, average for (int k = 0; k <arr .length ; k ++) { sum + = arr [k]; } System.out.println ( "sum :"+ sum); System.out.println ( "average :"+ (sum / arr.length)); // 2 , 배열의 복사본 int copy [] = new int [arr.length]; for (i = 0; i < arr.length; i ++) {
복사 [i] = arr [i];
}
for (i = 0; i <copy.length; i ++) { System.out.println (copy [i]); } System.out.println (); System.out.println (); // 3 、 수량을 계산하는 int temp [] = new int [arr.length]; int k = 0; for (i = arr.length-1; i> = 0; i-) { //System.out.println(arr[i]); 온도 [k] = arr [i]; k ++; } arr = 임시; for (i = 0; i <arr.length; i ++) { System.out.println (arr [i]); } * / / ** 4 、 数组 元素 的 排序
버블 링 방법 : 정렬 아이디어 :
두 개의 인접한 요소를 비교하고, 필요한 경우 교환하고, 루프가 완료 될 때마다 가장 큰 요소를 마지막에 정렬 (예 : 작은 것에서 큰 것으로 정렬)하고
다음 루프는 다른 숫자를 유사하게 수행하는 것입니다.
int arr [] = new int [] {10,32,1,234,554,6,21};
int temp;
for (int i = 0; i <arr.length-1; i ++) {// Loop round
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; } } } for (int i = 0; i <arr.length; i ++) { System.out.println (arr [i]); } * / / ** 배열 작업 :
* (1) TestArray라는 클래스를 만들고 main () 메서드에서 두 개의 변수 array1과 array2를 선언합니다. 이들은 int [] 유형의 배열입니다.
(2) 중괄호 {}를 사용하여 array1을 8 개의 소수 (2,3,5,7,11,13,17,19)로 초기화합니다.
(3) array1의 내용을 표시합니다.
(4) array2 변수를 array1과 동일하게 할당하고 array2의 짝수 인덱스 요소를
인덱스 값과 같도록 수정합니다 (예 : array [0] = 0, array [2] = 2). array1을 인쇄합니다.
* /
int array1 [] = 새로운 int [] {2,3,5,7,11,13,17,19};
int array2 [] = 새로운 int [array1.length];
System.out.println ( "array1의 값 인쇄 :");
for (int i = 0; i <array1.length; i ++) {
System.out.print (array1 [i] + ",");
}
System .out.println ();
System.out.println ();
// array1과 동일한 array2 변수 할당
for (int i = 0; i <array1.length; i ++) { array2 [i] = array1 [i]; } System .out.println ( "array2 배열 값 :"); for (int i = 0; i <array2.length; i ++) { System.out.print (array2 [i] + ","); } // 4 , array2의 짝수 인덱스 요소를 수정합니다. // 인덱스 값과 동일하게 만듭니다 (예 : array [0] = 0, array [2] = 2). array1 for (int i = 0; i <array2.length;
if (i % 2 == 0) { array2 [i] = i; System.out.println (array2 [i]); } else { System.out.print (array2 [i] + "\ t"); } } System.out.println (); System.out.println (); // 数组 自身 反转 int temp; System.out.println ( "初始 数组 :"); for (int i = 0; i <array1.length; i ++) { System.out.print (array1 [i] + ","); } System.out.println (); System.out.println ( "数组 自身 反转 :"); for (int i = array1.length-1; i> = 0; i-) {
System.out.print (array1 [i] + ",");
}
}
}