diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index b815e2152..ffd13a1b5 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -20,14 +20,14 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 11 - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: java-version: 11 distribution: 'temurin' - name: Validate Gradle Wrapper - uses: gradle/wrapper-validation-action@v1 + uses: gradle/wrapper-validation-action@v3 - name: Setup and execute tests via Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@v3 with: gradle-version: wrapper arguments: test @@ -46,14 +46,14 @@ jobs: steps: - uses: actions/checkout@v3 - name: Set up JDK 11 - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: java-version: 11 distribution: 'temurin' - name: Validate Gradle Wrapper - uses: gradle/wrapper-validation-action@v1 + uses: gradle/wrapper-validation-action@v3 - name: Verify all Java files are formatted correctly according to the Google Java Style Guide using Gradle - uses: gradle/gradle-build-action@v2 + uses: gradle/gradle-build-action@v3 id: verifygooglejavaformat with: gradle-version: wrapper diff --git a/README.md b/README.md index 73faaf43c..a42be2f99 100644 --- a/README.md +++ b/README.md @@ -293,7 +293,7 @@ $ java -cp classes com.williamfiset.algorithms.search.BinarySearch - [Counting sort](src/main/java/com/williamfiset/algorithms/sorting/CountingSort.java) **- O(n + k)** - [Heapsort](src/main/java/com/williamfiset/algorithms/sorting/Heapsort.java) **- O(nlog(n))** - [Insertion sort](src/main/java/com/williamfiset/algorithms/sorting/InsertionSort.java) **- O(n2)** -- [Mergesort](src/main/java/com/williamfiset/algorithms/sorting/MergeSort.java) **- O(nlog(n))** +- [:movie_camera:](https://www.youtube.com/watch?v=-3u1C1URNZY) [Mergesort](src/main/java/com/williamfiset/algorithms/sorting/MergeSort.java) **- O(nlog(n))** - [Quicksort (in-place, Hoare partitioning)](src/main/java/com/williamfiset/algorithms/sorting/QuickSort.java) **- Θ(nlog(n))** - [Quicksort3 (Dutch National Flag algorithm)](src/main/java/com/williamfiset/algorithms/sorting/QuickSort3.java) **- Θ(nlog(n))** - [Selection sort](src/main/java/com/williamfiset/algorithms/sorting/SelectionSort.java) **- O(n2)** diff --git a/build.gradle b/build.gradle index c4f835316..2c69fb357 100644 --- a/build.gradle +++ b/build.gradle @@ -8,7 +8,7 @@ buildscript { plugins { // https://github.com/diffplug/spotless - id("com.diffplug.spotless") version "6.20.0" + id("com.diffplug.spotless") version "6.25.0" } apply plugin: 'java' @@ -25,14 +25,14 @@ repositories { // 'compile' for project dependencies. dependencies { // Apache commons lang - testImplementation 'org.apache.commons:commons-lang3:3.13.0' + testImplementation 'org.apache.commons:commons-lang3:3.14.0' // JUnit 5 / Jupiter testImplementation('org.junit.jupiter:junit-jupiter:5.10.0') testRuntimeOnly('org.junit.jupiter:junit-jupiter-engine:5.10.0') // Google Guava lib - testImplementation group: 'com.google.guava', name: 'guava', version: '32.1.2-jre' + testImplementation group: 'com.google.guava', name: 'guava', version: '33.3.1-jre' // Google Truth test framework // https://mvnrepository.com/artifact/com.google.truth/truth diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/suffixarray/SuffixArray.java b/src/main/java/com/williamfiset/algorithms/datastructures/suffixarray/SuffixArray.java index 77b5c498a..ac8702f12 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/suffixarray/SuffixArray.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/suffixarray/SuffixArray.java @@ -88,6 +88,7 @@ private void kasai() { @Override public String toString() { + if (!constructedLcpArray) buildLcpArray(); StringBuilder sb = new StringBuilder(); sb.append("-----i-----SA-----LCP---Suffix\n");