Java数组从入门到精通:轻松掌握声明、初始化和排序算法

// 声明一个能装5个整数的数组 int[] scores = new int[5];

// 直接列出所有元素 int[] primeNumbers = {2, 3, 5, 7, 11}; String[] weekdays = {"Monday", "Tuesday", "Wednesday"};

int[] scores = {85, 92, 78, 96, 88}; System.out.println(scores[0]); // 输出85 System.out.println(scores[2]); // 输出78

public static void bubbleSort(int[] arr) {

int n = arr.length;
for (int i = 0; i < n - 1; i++) {
    for (int j = 0; j < n - i - 1; j++) {
        if (arr[j] > arr[j + 1]) {
            // 交换相邻元素
            int temp = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = temp;
        }
    }
}

}

// 寻找和为k的最长子数组长度 public int maxSubArrayLen(int[] nums, int k) {

Map<Integer, Integer> map = new HashMap<>();
map.put(0, -1); // 前缀和为0的索引是-1
int sum = 0, maxLen = 0;

for (int i = 0; i < nums.length; i++) {
    sum += nums[i];
    if (map.containsKey(sum - k)) {
        maxLen = Math.max(maxLen, i - map.get(sum - k));
    }
    map.putIfAbsent(sum, i);
}
return maxLen;

}

你可能想看:
免责声明:本网站部分内容由用户自行上传,若侵犯了您的权益,请联系我们处理,谢谢!联系QQ:2760375052

分享:

扫一扫在手机阅读、分享本文

最近发表