iT邦幫忙

2023 iThome 鐵人賽

DAY 1
0
自我挑戰組

30天leetcode學習旅程系列 第 1

項次1 - Static Arrays

  • 分享至 

  • xImage
  •  

矩陣宣告

在 Java 中,可以使用以下語法聲明陣列:

// 整數型陣列
int[] myArray;

// 字符串陣列
String[] myStringArray;

// 二維整型陣列
int[][] my2DArray;

以上代碼分別聲明了一個整型陣列、一個字符串陣列和一個二維整型陣列。可以看到,聲明一個陣列需要指定陣列的類型和陣列的名稱。在聲明陣列時,可以選擇性地為其分配空間。例如,可以聲明一個空的整型陣列,如下所示:

int[] myArray = new int[5];

上面的代碼聲明了一個包含 5 個整數型元素的陣列。可以通過索引訪問陣列中的元素。例如,要訪問陣列的第一個元素,可以使用以下代碼:

int firstElement = myArray[0];

這裡的索引是從 0 開始的,因此第一個元素的索引為 0。同樣,要訪問陣列的第二個元素,可以使用以下代碼:

int secondElement = myArray[1];

除了單維陣列,Java 還支持多維陣列。例如,可以聲明一個二維整型陣列,如下所示:

int[][] my2DArray = new int[3][4];

這裡,聲明了一個包含 3 行和 4 列的二維整型陣列。可以使用兩個索引來訪問其中的元素。例如,要訪問第一行第二列的元素,可以使用以下代碼:

int element = my2DArray[0][1];

此外,在 Java 中還可以使用陣列的 length 屬性來獲取陣列的長度。例如,要獲取一個陣列的長度,可以使用以下代碼:

int length = myArray.length;

將返回 myArray 陣列中元素的數量。

第一天-Static Arrays

題目:26. Remove Duplicates from Sorted Array

連結:https://leetcode.com/problems/remove-duplicates-from-sorted-array/

  • 等級:Easy

解題思路

  1. 使用index紀錄陣列位置
  2. 迴圈判斷取得的值大於index位置的值,就將數值放在index位置後.
class Solution {
    public int removeDuplicates(int[] nums) {
        int index = nums.length > 0 ? 1 : 0;
        for (int i = 0; i < nums.length;i++)
        {
            if (nums[i] > nums[index -1])
                nums[index++] = nums[i];
        }
        return index;
    }
}
  • Time complexity: O(n)
  • Space complexity: O(1)

80. Remove Duplicates from Sorted Array II

連結:https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/

  • 等級:Medium

解題思路

  1. 使用index紀錄陣列位置
  2. 迴圈判斷取得的值大於index-2位置的值,就將數值放在index位置後.
class Solution {
    public int removeDuplicates(int[] nums) {
        int index = 0;
        for (int j =0; j < nums.length; j++)
        {
            int val = nums[j];
            if (index < 2 || val > nums[index - 2])
                nums[index++] = val;
        }
        return index;
    }
}
  • Time complexity: O(n)
  • Space complexity: O(1)

下一篇
項次2-Dynamic Arrays
系列文
30天leetcode學習旅程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言