Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 0 additions & 23 deletions src/HowManyNumbersAreSmallerThanTheCurrentNumber1365.java

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Tags: Array
package com.leetcode.easy;

public class HowManyNumbersAreSmallerThanTheCurrentNumber1365 {
/**
* Time Complexity: O(n²) where n is the length of the nums array
* - Outer loop iterates through all n elements
* - Inner loop also iterates through all n elements for each outer iteration
* - Total operations: n * n = n²
* <p>
* Space Complexity: O(n)
* - Result array 'res' stores n elements
* - Only uses constant extra space for variables (i, j, count)
*/
public int[] smallerNumbersThanCurrent(int[] nums) {
int[] res = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
int count = 0;
for (int j = 0; j < nums.length; j++) {
if (i != j && nums[j] < nums[i]) {
count++;
}
}
res[i] = count;
}
return res;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package com.leetcode.easy;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertArrayEquals;

public class HowManyNumbersAreSmallerThanTheCurrentNumber1365Test {
private HowManyNumbersAreSmallerThanTheCurrentNumber1365 solution;

@BeforeEach
void setUp() {
solution = new HowManyNumbersAreSmallerThanTheCurrentNumber1365();
}

@Test
void testSmallerNumbersThanCurrent_Example1() {
int[] nums = {8, 1, 2, 2, 3};
int[] expected = {4, 0, 1, 1, 3};
int[] result = solution.smallerNumbersThanCurrent(nums);
assertArrayEquals(expected, result);
}

@Test
void testSmallerNumbersThanCurrent_Example2() {
int[] nums = {6, 5, 4, 8};
int[] expected = {2, 1, 0, 3};
int[] result = solution.smallerNumbersThanCurrent(nums);
assertArrayEquals(expected, result);
}

@Test
void testSmallerNumbersThanCurrent_Example3() {
int[] nums = {7, 7, 7, 7};
int[] expected = {0, 0, 0, 0};
int[] result = solution.smallerNumbersThanCurrent(nums);
assertArrayEquals(expected, result);
}
}
Loading