Bird
Raised Fist0
DSA Javaprogramming~5 mins

Array Declaration and Initialization in DSA Java - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Array Declaration and Initialization
O(n)
Understanding Time Complexity

When we create and fill an array, it takes some time depending on how many items we add.

We want to know how the time needed grows as the array size grows.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


int[] arr = new int[n];
for (int i = 0; i < n; i++) {
    arr[i] = i * 2;
}
    

This code creates an array of size n and fills it with values by multiplying the index by 2.

Identify Repeating Operations
  • Primary operation: The for-loop that assigns values to each array element.
  • How many times: Exactly n times, once for each element in the array.
How Execution Grows With Input

As the array size grows, the number of assignments grows the same way.

Input Size (n)Approx. Operations
1010 assignments
100100 assignments
10001000 assignments

Pattern observation: The time grows directly in proportion to the size of the array.

Final Time Complexity

Time Complexity: O(n)

This means the time to create and fill the array grows linearly with the number of elements.

Common Mistake

[X] Wrong: "Creating an array and filling it is instant, no matter the size."

[OK] Correct: Each element must be assigned a value, so the time grows with the number of elements.

Interview Connect

Understanding how array initialization time grows helps you explain performance when working with large data sets.

Self-Check

"What if we initialize the array without a loop, using default values? How would the time complexity change?"

Practice

(1/5)
1. Which of the following is the correct way to declare and initialize an integer array of size 5 in Java?
easy
A. int[] arr = new int[5];
B. int arr = new int[5];
C. int arr[] = int[5];
D. int[] arr = int[5];

Solution

  1. Step 1: Understand Java array declaration syntax

    In Java, arrays are declared with the type followed by square brackets and initialized with the new keyword and size inside square brackets.
  2. Step 2: Check each option for correct syntax

    int[] arr = new int[5]; uses correct syntax: int[] arr = new int[5]; Options A, B, and D have syntax errors or missing keywords.
  3. Final Answer:

    int[] arr = new int[5]; -> Option A
  4. Quick Check:

    Correct Java array declaration = int[] arr = new int[5]; [OK]
Hint: Use 'new' keyword and specify size in brackets [OK]
Common Mistakes:
  • Forgetting 'new' keyword
  • Using wrong brackets or missing type
  • Declaring array without brackets
2. Which of the following is a valid way to declare and initialize an array with values in Java?
easy
A. int[] arr = new int[] {1, 2, 3, 4};
B. int arr[] = new int{1, 2, 3, 4};
C. int[] arr = new int{1, 2, 3, 4};
D. int arr = {1, 2, 3, 4};

Solution

  1. Step 1: Understand array initialization with values

    In Java, to initialize an array with values using 'new', syntax is: int[] arr = new int[] {values};
  2. Step 2: Check each option

    int[] arr = new int[] {1, 2, 3, 4};: correct syntax. int arr[] = new int{1, 2, 3, 4};: incorrect declaration style and missing [] after new int. int[] arr = new int{1, 2, 3, 4};: missing [] after new int. int arr = {1, 2, 3, 4};: arr not declared as array.
  3. Final Answer:

    int[] arr = new int[] {1, 2, 3, 4}; -> Option A
  4. Quick Check:

    Array init with 'new int[]' = int[] arr = new int[] {1, 2, 3, 4}; [OK]
Hint: Use 'new int[]' when initializing separately [OK]
Common Mistakes:
  • Omitting 'new' when required
  • Using wrong brackets
  • Assigning values without array type
3. What will be the output of the following Java code?
int[] arr = new int[3];
arr[0] = 5;
arr[2] = 10;
System.out.println(arr[1]);
medium
A. 5
B. 0
C. 10
D. Compilation error

Solution

  1. Step 1: Understand default values in integer arrays

    When an integer array is created with 'new int[3]', all elements are initialized to 0 by default.
  2. Step 2: Check assigned values and output

    arr[0] = 5 and arr[2] = 10 are assigned. arr[1] is not assigned, so it remains 0. The print statement outputs arr[1], which is 0.
  3. Final Answer:

    0 -> Option B
  4. Quick Check:

    Unassigned int array element = 0 [OK]
Hint: Unassigned int array elements default to 0 [OK]
Common Mistakes:
  • Assuming unassigned elements have garbage values
  • Confusing index positions
  • Expecting runtime error for unassigned index
4. Identify the error in the following Java array declaration:
int arr[5];
medium
A. Missing semicolon at the end
B. Array must be declared with curly braces
C. Array size cannot be specified in declaration without initialization
D. Array size must be a variable, not a number

Solution

  1. Step 1: Understand Java array declaration rules

    In Java, you cannot specify the size of the array in the declaration alone. Size must be specified during initialization with 'new'.
  2. Step 2: Analyze the given code

    int arr[5]; tries to declare an array with size 5 without initialization, which is invalid syntax in Java.
  3. Final Answer:

    Array size cannot be specified in declaration without initialization -> Option C
  4. Quick Check:

    Size only with 'new' keyword [OK]
Hint: Specify size only with 'new' keyword during initialization [OK]
Common Mistakes:
  • Using C-style array declaration
  • Trying to declare size without 'new'
  • Confusing declaration and initialization
5. Given the following code, what will be the output?
int[] arr = {1, 2, 3};
arr = new int[] {4, 5};
System.out.print(arr.length);

Choose the correct output and explain why.
hard
A. 3
B. Runtime error
C. Compilation error
D. 2

Solution

  1. Step 1: Understand array reassignment

    Initially, arr points to an array of length 3 with values {1, 2, 3}. Then arr is reassigned to a new array with values {4, 5} of length 2.
  2. Step 2: Check the length property after reassignment

    After reassignment, arr.length reflects the new array length, which is 2.
  3. Final Answer:

    2 -> Option D
  4. Quick Check:

    Array length after reassignment = 2 [OK]
Hint: Array variable can point to new array; length updates accordingly [OK]
Common Mistakes:
  • Assuming original array length remains
  • Expecting error on reassignment
  • Confusing array contents with length
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard