diff --git a/.claude/SKILL.md b/.claude/SKILL.md new file mode 100644 index 000000000..a4d7c1388 --- /dev/null +++ b/.claude/SKILL.md @@ -0,0 +1,388 @@ +--- +name: algorithms-education +description: > + Skills and conventions for an educational algorithms and data structures repository. + Use this skill whenever working on algorithm implementations, data structure code, + LeetCode-style problems, graph theory, dynamic programming, or any Java-based + educational coding project. Trigger on mentions of: algorithms, data structures, + graph theory, sorting, searching, trees, DP, BFS, DFS, linked lists, heaps, + segment trees, union-find, or any request to write, refactor, document, or test + educational code. Also trigger when the user asks to "clean up", "simplify", + "document", "refactor" or "add tests" to algorithm code. +--- + +# Algorithms Education Skills + +This skill defines the conventions and standards for an educational algorithms +repository. The goal is to make every algorithm implementation clear, well-tested, +and accessible to learners who may not have deep CS backgrounds. + +--- + +## Skill 1: Code Documentation + +**Goal:** Every file should teach, not just implement. + +### Method-Level Documentation + +Every public method gets a doc comment that explains: +1. **What** the method does (in plain English, one sentence) +2. **How** it works (brief description of the approach/algorithm) +3. **Parameters** — what each input represents +4. **Returns** — what the output means +5. **Time/Space complexity** — always include Big-O + +```java +/** + * Finds the shortest path from a source node to all other nodes + * using Bellman-Ford's algorithm. Unlike Dijkstra's, this handles + * negative edge weights and detects negative cycles. + * + * @param graph - adjacency list where graph[i] lists edges from node i + * @param start - the source node index + * @param n - total number of nodes in the graph + * @return dist array where dist[i] = shortest distance from start to i, + * or Double.NEGATIVE_INFINITY if node i is in a negative cycle + * + * Time: O(V * E) — relaxes all edges V-1 times + * Space: O(V) — stores distance array + */ +``` + +### Inline Comments on Key Lines + +Comment the **why**, not the **what**. Focus on lines where the logic isn't obvious: + +```java +// Relax all edges V-1 times. After V-1 passes, shortest paths +// are guaranteed if no negative cycles exist. +for (int i = 0; i < n - 1; i++) { + for (Edge e : edges) { + if (dist[e.from] + e.cost < dist[e.to]) { + dist[e.to] = dist[e.from] + e.cost; + } + } +} + +// If we can still relax an edge after V-1 passes, that node +// is reachable from a negative cycle — mark it as -infinity. +for (int i = 0; i < n - 1; i++) { + for (Edge e : edges) { + if (dist[e.from] + e.cost < dist[e.to]) { + dist[e.to] = Double.NEGATIVE_INFINITY; + } + } +} +``` + +### File-Level Header + +Every file starts with a comment block explaining the algorithm in the file + +```java +/** + * Bellman-Ford Shortest Path Algorithm + * + * Computes single-source shortest paths in a weighted graph. + * Handles negative edge weights and detects negative cycles. + * + * Use cases: + * - Graphs with negative weights (where Dijkstra fails) + * - Detecting negative cycles (e.g., currency arbitrage) + * + * Run with: + * bazel run //src/main/java/com/williamfiset/algorithms/graphtheory:BellmanFordAdjacencyList + * + * @see Wikipedia + */ +``` + +--- + +## Skill 2: Test Coverage + +**Goal:** Every algorithm has tests that prove it works and teach edge cases. + +### Test File Structure + +Place tests alongside source files or in a `tests/` directory. Name test files +to mirror the source: `BellmanFord.java` → `BellmanFordTest.java`. + +### What to Test + +For every algorithm, cover these categories: + +1. **Basic/Happy path** — typical input, expected output +2. **Edge cases** — empty input, single element, duplicates +3. **Boundary conditions** — max/min values, zero, Integer.MAX_VALUE +4. **Known tricky inputs** — cases that commonly break naive implementations +5. **Performance sanity check** — large input doesn't hang or crash (optional) + +### Test Naming Convention + +Use descriptive names that read like a sentence: + +```java +@Test +public void testShortestPathSimpleGraph() { ... } + +@Test +public void testDetectsNegativeCycle() { ... } + +@Test +public void testSingleNodeGraph() { ... } + +@Test +public void testDisconnectedNodes() { ... } +``` + +### Test Documentation + +Each test method gets a brief comment explaining what scenario it covers and +why that scenario matters: + +```java +/** + * Graph with a negative cycle reachable from the source. + * Bellman-Ford should mark affected nodes as NEGATIVE_INFINITY. + * + * 0 --5--> 1 --(-10)--> 2 --3--> 1 + * (creates cycle 1→2→1 with net cost -7) + */ +@Test +public void testDetectsNegativeCycle() { + // ... test body +} +``` + +### When Modifying Code, Update Tests + +Every code change must be accompanied by: +- Running existing tests to check for regressions +- Adding new tests if new behavior is introduced +- Updating existing tests if method signatures or behavior changed +- Removing tests only if the feature they cover was deliberately removed + +--- + +## Skill 3: Refactoring and Code Debt + +**Goal:** Keep the codebase clean without losing educational value. + +### When to Remove Code + +Remove code that is: +- Exact duplicates of another implementation with no added educational value +- Dead code (unreachable, unused helper methods) +- Commented-out blocks with no explanation of why they exist +- Temporary debug/print statements + +### When to Keep "Duplicate" Code + +Keep alternative implementations when they teach different approaches: + +```java +// ✓ KEEP — BFS and DFS solutions to the same problem teach different techniques +public int[] bfsSolve(int[][] grid) { ... } +public int[] dfsSolve(int[][] grid) { ... } + +// ✓ KEEP — iterative vs recursive shows tradeoffs +public int fibRecursive(int n) { ... } +public int fibIterative(int n) { ... } + +// ✗ REMOVE — identical logic, just different variable names +public int search_v1(int[] arr, int target) { ... } +public int search_v2(int[] arr, int target) { ... } +``` + +When keeping alternatives, clearly label them with a comment explaining the +educational purpose: + +```java +/** + * Recursive implementation of binary search. + * Compare with binarySearchIterative() to see the iterative approach. + * The iterative version avoids stack overhead for large arrays. + */ +``` + +### Debt Checklist + +When refactoring, scan for: +- [ ] Unused imports +- [ ] Unused variables or parameters +- [ ] Methods that can be combined or simplified +- [ ] Magic numbers that should be named constants +- [ ] Inconsistent naming within the same file +- [ ] Copy-pasted blocks that should be extracted into a helper + +--- + +## Skill 4: Code Formatting and Consistency + +**Goal:** Uniform style across the entire repository. + +### Naming Conventions + +Use **short, clear** variable names. Prefer readability through simplicity: + +```java +// ✓ GOOD — short and clear +int n = graph.length; +int[] dist = new int[n]; +boolean[] vis = new boolean[n]; +List adj = new ArrayList<>(); +Queue q = new LinkedList<>(); +int src = 0; +int dst = n - 1; + +// ✗ BAD — verbose names that clutter algorithm logic +int numberOfNodesInGraph = graph.length; +int[] shortestDistanceFromSource = new int[numberOfNodesInGraph]; +boolean[] hasNodeBeenVisited = new boolean[numberOfNodesInGraph]; +List adjacencyListRepresentation = new ArrayList<>(); +Queue breadthFirstSearchQueue = new LinkedList<>(); +int sourceNodeIndex = 0; +int destinationNodeIndex = numberOfNodesInGraph - 1; +``` + +Common short names (use consistently across the repo): + +| Name | Meaning | +|--------|-------------------------------| +| `n` | number of elements/nodes | +| `m` | number of edges | +| `i, j` | loop indices | +| `from, to` | graph node endpoints | +| `cost` | edge weight | +| `dist` | distance array | +| `vis` | visited array | +| `adj` | adjacency list | +| `q` | queue | +| `pq` | priority queue | +| `st` | stack | +| `dp` | dynamic programming table | +| `ans` | result/answer | +| `lo` | low pointer/bound | +| `hi` | high pointer/bound | +| `mid` | midpoint | +| `src` | source node | +| `dst` | destination node | +| `cnt` | counter | +| `sz` | size | +| `cur` | current element | +| `prev` | previous element | +| `next` | next element (use `nxt` if shadowing keyword) | + +### Formatting Rules + +- Braces: opening brace on the same line (`if (...) {`) +- Indentation: 2 spaces (no tabs) +- Blank lines: one blank line between methods, none inside short methods +- Max line length: 100 characters (soft limit) +- Imports: group by package, alphabetize within groups, no wildcard imports + +### Avoid Java Streams + +Streams hurt readability for learners. Use plain loops instead: + +```java +// ✗ AVOID — streams obscure the logic for beginners +int sum = Arrays.stream(arr).filter(x -> x > 0).reduce(0, Integer::sum); + +// ✓ PREFER — a loop is immediately readable +int sum = 0; +for (int x : arr) { + if (x > 0) sum += x; +} +``` + +--- + +## Skill 5: Simplification + +**Goal:** The simplest correct code teaches the best. + +### Simplification Strategies + +1. **Reduce nesting** — invert conditions, return early + +```java +// ✗ AVOID — deep nesting +if (node != null) { + if (node.left != null) { + if (node.left.val == target) { + return true; + } + } +} +return false; + +// ✓ PREFER — early returns keep code flat +if (node == null) return false; +if (node.left == null) return false; +return node.left.val == target; +``` + +2. **Extract repeated logic** — but only if it genuinely reduces complexity + +3. **Use standard library where it clarifies** — `Arrays.sort()`, `Collections.swap()`, + `Math.min()`, etc. are fine because learners need to know these exist + +4. **Remove unnecessary wrappers** — don't wrap a single method call in another method + +5. **Prefer arrays over complex data structures** when the problem allows it — + `int[]` is clearer than `ArrayList` when the size is known + +### What NOT to Simplify + +- Don't merge two clearly distinct algorithm phases into one loop just to save lines +- Don't replace clear if/else chains with ternary operators if it reduces readability +- Don't remove intermediate variables that give a name to a complex expression + +--- + +## Skill 6: Bug Detection + +**Goal:** Catch bugs proactively whenever touching code. + +### Bug Scan Checklist + +When modifying any lines of code, actively check for and report: + +- [ ] **Off-by-one errors** — loop bounds, array indices, fence-post problems +- [ ] **Integer overflow** — multiplication or addition that could exceed int range +- [ ] **Null/empty checks** — missing guards for null arrays, empty collections +- [ ] **Uninitialized values** — using variables before assignment (especially in dp arrays) +- [ ] **Wrong comparison** — `==` vs `<=`, `<` vs `<=` in loop conditions +- [ ] **Infinite loops** — conditions that never become false, missing increments +- [ ] **Array out of bounds** — indexing with `i+1`, `i-1` without range checks +- [ ] **Graph issues** — missing visited check (infinite loop in cycles), wrong direction in directed graph +- [ ] **Incorrect base cases** — dp[0], recursion base case, empty graph +- [ ] **Mutation bugs** — modifying input that caller expects unchanged +- [ ] **Copy vs reference** — shallow copy when deep copy needed +- [ ] **Return value misuse** — ignoring return value, returning wrong variable + +### How to Report Bugs + +When a bug is found, report it clearly: + +``` +🐛 BUG FOUND in BellmanFord.java line 42: + Loop runs `i < n` but should be `i < n - 1`. + The extra iteration incorrectly marks reachable nodes as + being in a negative cycle. + FIX: Change `i < n` to `i < n - 1` +``` + +--- + +## Skill 7: Algorithm Explanation Comments + +**Goal:** Help learners understand the *why* behind each algorithm. + +--- + +## Skill 8: Place main method at the bottom + +**Goal:** The main java method should be near the bottom of the Java file for consistency throughout the project diff --git a/.gemini/SKILL.md b/.gemini/SKILL.md new file mode 120000 index 000000000..13a96ab46 --- /dev/null +++ b/.gemini/SKILL.md @@ -0,0 +1 @@ +../.claude/SKILL.md \ No newline at end of file diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 560aa4f2b..7503b0e34 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,7 +4,3 @@ updates: directory: "/" # Location of package manifests schedule: interval: "weekly" - - package-ecosystem: "gradle" - directory: "/" - schedule: - interval: "weekly" diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml deleted file mode 100644 index ffd13a1b5..000000000 --- a/.github/workflows/gradle.yml +++ /dev/null @@ -1,64 +0,0 @@ -# This workflow will build a Java project with Gradle -# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle - -name: Java CI with Gradle - -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] - -permissions: - checks: write - -jobs: - test: - name: Test - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 11 - uses: actions/setup-java@v4 - with: - java-version: 11 - distribution: 'temurin' - - name: Validate Gradle Wrapper - uses: gradle/wrapper-validation-action@v3 - - name: Setup and execute tests via Gradle - uses: gradle/gradle-build-action@v3 - with: - gradle-version: wrapper - arguments: test - - name: Publish Test Results - if: ${{ always() }} - uses: mikepenz/action-junit-report@v3 - with: - report_paths: "**/TEST-*.xml" - exclude_sources: build/ - annotate_only: ${{ github.event_name == 'pull_request' }} - - style-check: - name: Code Formatting Check - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 - - name: Set up JDK 11 - uses: actions/setup-java@v4 - with: - java-version: 11 - distribution: 'temurin' - - name: Validate Gradle Wrapper - 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@v3 - id: verifygooglejavaformat - with: - gradle-version: wrapper - arguments: spotlessJavaCheck - - name: Create summary if format check failed - if: ${{ steps.verifygooglejavaformat.outcome == 'failure' }} - run: | - echo "Run the command `./gradlew spotlessApply` to fix Java formatting." >> $GITHUB_STEP_SUMMARY diff --git a/.github/workflows/readme-url-checker.yml b/.github/workflows/readme-url-checker.yml index 548349949..12e5853b4 100644 --- a/.github/workflows/readme-url-checker.yml +++ b/.github/workflows/readme-url-checker.yml @@ -1,23 +1,35 @@ # Use awesome bot to verify that all URLs in the README are valid. name: README URL Checker + on: push: branches: [ master ] pull_request: branches: [ master ] + jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Set up Ruby 2.6 - uses: ruby/setup-ruby@v1 - with: - ruby-version: 3.0 + - uses: actions/checkout@v3 + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: 3.2 + # Disable bundler-cache since we aren't using a Gemfile + bundler-cache: false + + - name: Install Awesome Bot + # We install it globally so we don't need bundle exec + run: gem install awesome_bot - - name: Install Awesome Bot - run: gem install awesome_bot - - name: Run Awesome Bot - run: | - awesome_bot README.md --allow-dupe --allow-redirect - echo "If this workflow fails, it usually means there's a broken link in the README that needs fixing. This workflow has been flaky in the past, so verify the reported broken links, but don't sweat it if this workflow is broken." + # TODO: Cache the result of awesome_bot requests, we don't need to check + # if a link is valid for every commit/PR all the time, we should be able + # to cache the result for a couple days. + - name: Run Awesome Bot + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + # Call the command directly + awesome_bot README.md --allow-dupe --allow-redirect --allow 429 diff --git a/.gitignore b/.gitignore index 01f72ebc4..d45d3a211 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,8 @@ *.class +# Gradle build outputs +build/ + # Bazel build outputs bazel-* /bazel-bin diff --git a/build/distributions/Algorithms.tar b/build/distributions/Algorithms.tar deleted file mode 100644 index 960ce1e74..000000000 Binary files a/build/distributions/Algorithms.tar and /dev/null differ diff --git a/build/distributions/Algorithms.zip b/build/distributions/Algorithms.zip deleted file mode 100644 index c6336ea08..000000000 Binary files a/build/distributions/Algorithms.zip and /dev/null differ diff --git a/build/libs/Algorithms.jar b/build/libs/Algorithms.jar deleted file mode 100644 index 2ee93977e..000000000 Binary files a/build/libs/Algorithms.jar and /dev/null differ diff --git a/build/reports/problems/problems-report.html b/build/reports/problems/problems-report.html deleted file mode 100644 index dd30430de..000000000 --- a/build/reports/problems/problems-report.html +++ /dev/null @@ -1,659 +0,0 @@ - - - - - - - - - - - - - Gradle Configuration Cache - - - -
- -
- Loading... -
- - - - - - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest.html deleted file mode 100644 index bd414cf01..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - -Test results - AVLTreeTest - - - - - -
-

AVLTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
11
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.223s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomRemoveTests()1.190spassed
testLeftLeftCase()0spassed
testLeftRightCase()0spassed
testNullInsertion()0.001spassed
testNullRemoval()0spassed
testRandomizedBalanceFactorTest()0.005spassed
testRandomizedValueInsertionsAgainstTreeSet()0.013spassed
testRightLeftCase()0.010spassed
testRightRightCase()0.001spassed
testTreeContainsNull()0spassed
testTreeHeight()0.003spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest.html deleted file mode 100644 index 78c238860..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - -Test results - RedBlackTreeTest - - - - - -
-

RedBlackTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
15
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
17.508s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
interestingCase1()0spassed
randomRemoveTests()17.333spassed
testLeftLeftRotation()0spassed
testLeftRightRotation()0spassed
testLeftUncleCase()0spassed
testNullInsertion()0.001spassed
testNullRemoval()0spassed
testNumberDoesntExist()0spassed
testRandomizedValueInsertionsAgainstTreeSet()0.123spassed
testRemoval()0spassed
testRightLeftRotation()0spassed
testRightRightRotation()0spassed
testRightUncleCase()0spassed
testTreeContainsNull()0spassed
testTreeHeight()0.051spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest.html deleted file mode 100644 index bb4ad89ad..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - -Test results - TreapTreeTest - - - - - -
-

TreapTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.053s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
LeftLeftCase()0spassed
randomTreapOperations()0.052spassed
testLeftRightCase()0spassed
testNullInsertion()0spassed
testRightLeftCase()0.001spassed
testRightRightCase()0spassed
testTreeContainsNull()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest.html deleted file mode 100644 index 657ba69ca..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - -Test results - BinarySearchTreeTest - - - - - -
-

BinarySearchTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
19
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.015s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
concurrentModificationErrorInOrderOrder()0spassed
concurrentModificationErrorLevelOrder()0.001spassed
concurrentModificationErrorPostOrder()0spassed
concurrentModificationErrorPreOrder()0.001spassed
concurrentModificationErrorRemovingInOrderOrder()0spassed
concurrentModificationErrorRemovingLevelOrder()0spassed
concurrentModificationErrorRemovingPostOrder()0spassed
concurrentModificationErrorRemovingPreOrder()0.001spassed
randomRemoveTests()0.002spassed
testAdd()0.001spassed
testContains()0spassed
testHeight()0spassed
testInOrderTraversal()0.001spassed
testIsEmpty()0spassed
testLevelOrderTraversal()0.002spassed
testPostOrderTraversal()0.003spassed
testPreOrderTraversal()0.002spassed
testRemove()0.001spassed
testSize()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest.html deleted file mode 100644 index eb6bd5a00..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -Test results - SplayTreeTest - - - - - -
-

SplayTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
findMax()0.001spassed
getRoot()0spassed
insertSearch()0spassed
splayInsertDeleteSearch()0.001spassed
splayTreePriorityQueueConsistencyTest()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest.html deleted file mode 100644 index 7b14871c6..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - BloomFilterTest - - - - - -
-

BloomFilterTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.021s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
containsTests()0.020spassed
testStringSetAllSubsets()0spassed
testStringSetAllSubsetsFailure()0.001spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest.html deleted file mode 100644 index 4c035dc28..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - -Test results - FenwickTreeRangeQueryPointUpdateTest - - - - - -
-

FenwickTreeRangeQueryPointUpdateTest

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.068s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testIllegalCreation()0spassed
testIntervalSumNegativeValues()0spassed
testIntervalSumNegativeValues2()0spassed
testIntervalSumPositiveValues()0spassed
testRandomizedSetSumQueries()0.037spassed
testRandomizedStaticSumQueries()0.021spassed
testReusability()0.010spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest.html deleted file mode 100644 index 86b28efa6..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - FenwickTreeRangeUpdatePointQueryTest - - - - - -
-

FenwickTreeRangeUpdatePointQueryTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.011s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testFenwickTreeRangeUpdatePointQueryNegativeNumbers()0.001spassed
testFenwickTreeRangeUpdatePointQueryOverlappingRanges()0.006spassed
testFenwickTreeRangeUpdatePointQueryRepeatedAddition()0.004spassed
testFenwickTreeRangeUpdatePointQuerySimple()0spassed
testFenwickTreeRangeUpdatePointQuerySimple2()0spassed
testIllegalCreation()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest.html deleted file mode 100644 index f931744b1..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - -Test results - FibonacciHeapTest - - - - - -
-

FibonacciHeapTest

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.007s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
addAllAndContinsItem()0spassed
clearQueue()0spassed
elementThrowsException()0.001spassed
emptyWhenCreated()0spassed
insertSameValuesAndReturnsOrderedItems()0spassed
insertSingleItem()0spassed
isEmptyAfterSoleElementRemoved()0.001spassed
noLongerEmptyAfterAdd()0spassed
offerPeekAndElement()0spassed
returnsOrderedItems()0.001spassed
returnsOrderedItemsFromRandomInsert()0.003spassed
singletonQueueReturnsSoleItemOnPoll()0.001spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest.html deleted file mode 100644 index 6443e46f8..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - -Test results - HashTableDoubleHashingTest - - - - - -
-

HashTableDoubleHashingTest

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.202s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomIteratorTests()0.039spassed
randomRemove()0.019spassed
removeTest()0spassed
testConcurrentModificationException()0spassed
testConcurrentModificationException2()0.001spassed
testIllegalCreation1()0.001spassed
testIllegalCreation2()0spassed
testIllegalCreation3()0.001spassed
testIterator()0.035spassed
testLegalCreation()0.001spassed
testRandomMapOperations()0.070spassed
testUpdatingValue()0.035spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest.html deleted file mode 100644 index 7ef56887e..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - -Test results - HashTableLinearProbingTest - - - - - -
-

HashTableLinearProbingTest

- -
- - - - - -
-
- - - - - - - -
-
-
14
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.080s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomIteratorTests()0.013spassed
randomRemove()0.007spassed
removeTest()0spassed
removeTestComplex1()0spassed
testConcurrentModificationException()0.001spassed
testConcurrentModificationException2()0.001spassed
testIllegalCreation1()0.001spassed
testIllegalCreation2()0spassed
testIllegalCreation3()0spassed
testIterator()0.017spassed
testLegalCreation()0spassed
testNullKey()0spassed
testRandomMapOperations()0.040spassed
testUpdatingValue()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest.html deleted file mode 100644 index 8e8e74aa4..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - -Test results - HashTableQuadraticProbingTest - - - - - -
-

HashTableQuadraticProbingTest

- -
- - - - - -
-
- - - - - - - -
-
-
15
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.252s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomIteratorTests()0.040spassed
randomRemove()0.024spassed
removeTest()0spassed
removeTestComplex1()0spassed
testConcurrentModificationException()0spassed
testConcurrentModificationException2()0spassed
testIllegalCreation1()0spassed
testIllegalCreation2()0.001spassed
testIllegalCreation3()0.001spassed
testIterator()0.073spassed
testLegalCreation()0.001spassed
testNullKey()0.001spassed
testRandomMapOperations()0.097spassed
testTableSize()0.014spassed
testUpdatingValue()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest.html deleted file mode 100644 index 3aed35bb6..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - -Test results - HashTableSeparateChainingTest - - - - - -
-

HashTableSeparateChainingTest

- -
- - - - - -
-
- - - - - - - -
-
-
13
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.234s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomIteratorTests()0.045spassed
randomRemove()0.025spassed
removeTest()0spassed
removeTestComplex1()0spassed
testConcurrentModificationException()0.001spassed
testConcurrentModificationException2()0spassed
testIllegalCreation1()0spassed
testIllegalCreation2()0spassed
testIllegalCreation3()0.001spassed
testIterator()0.064spassed
testLegalCreation()0.001spassed
testRandomMapOperations()0.097spassed
testUpdatingValue()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest.html deleted file mode 100644 index c47984480..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - -Test results - GeneralKDTreeTest - - - - - -
-

GeneralKDTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
16
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.003s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testDelete()0spassed
testDeleteEmpty()0spassed
testDeleteMismatchDimensions()0spassed
testDeleteNull()0spassed
testDeleteRoot()0spassed
testDimensionsNegative()0spassed
testDimensionsZero()0.001spassed
testFindMin()0spassed
testFindMinNegative()0spassed
testFindMinOutOfBounds()0spassed
testInsert()0spassed
testInsertMismatchDimensions()0spassed
testInsertNull()0.001spassed
testSearch()0spassed
testSearchMismatchDimensions()0.001spassed
testSearchNull()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest.html deleted file mode 100644 index f2ec6890f..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest.html +++ /dev/null @@ -1,191 +0,0 @@ - - - - - -Test results - LinkedListTest - - - - - -
-

LinkedListTest

- -
- - - - - -
-
- - - - - - - -
-
-
20
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.317s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testAddAt()0spassed
testAddFirst()0spassed
testAddLast()0spassed
testClear()0spassed
testEmptyList()0spassed
testPeekFirst()0spassed
testPeekFirstOfEmpty()0spassed
testPeekLast()0spassed
testPeekLastOfEmpty()0spassed
testPeeking()0.001spassed
testRandomizedIndexOf()0.354spassed
testRandomizedRemoveAt()0.219spassed
testRandomizedRemoving()0.743spassed
testRemoveAt()0spassed
testRemoveFirst()0spassed
testRemoveFirstOfEmpty()0spassed
testRemoveLast()0spassed
testRemoveLastOfEmpty()0spassed
testRemoving()0spassed
testToString()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest.html deleted file mode 100644 index 69ae8dcc0..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - -Test results - BinaryHeapQuickRemovalsTest - - - - - -
-

BinaryHeapQuickRemovalsTest

- -
- - - - - -
-
- - - - - - - -
-
-
11
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.037s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testClear()0spassed
testContainment()0spassed
testContainmentRandomized()0.010spassed
testEmpty()0spassed
testHeapProperty()0spassed
testHeapify()0.004spassed
testPQReusability()0.005spassed
testRandomizedPolling()0.007spassed
testRandomizedRemoving()0.010spassed
testRemoving()0.001spassed
testRemovingDuplicates()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest.html deleted file mode 100644 index 15414e6e3..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - -Test results - BinaryHeapTest - - - - - -
-

BinaryHeapTest

- -
- - - - - -
-
- - - - - - - -
-
-
11
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.024s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testClear()0spassed
testContainment()0spassed
testContainmentRandomized()0.009spassed
testEmpty()0spassed
testHeapProperty()0spassed
testHeapify()0.002spassed
testPQReusability()0.003spassed
testRandomizedPolling()0.004spassed
testRandomizedRemoving()0.006spassed
testRemoving()0spassed
testRemovingDuplicates()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest.html deleted file mode 100644 index a8af7993d..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - MinDHeapTest - - - - - -
-

MinDHeapTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.567s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testClear()0.001spassed
testEmpty()0spassed
testHeapProperty()0spassed
testPriorityQueueSizeParam()0.423spassed
testPriorityRandomOperations()0.143spassed
testRemovingDuplicates()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest.html deleted file mode 100644 index e571b67d1..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - -Test results - MinIndexedBinaryHeapTest - - - - - -
-

MinIndexedBinaryHeapTest

- -
- - - - - -
-
- - - - - - - -
-
-
17
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.430s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testContainsInvalidKey()0spassed
testContainsValidKey()0spassed
testDuplicateKeys()0spassed
testIllegalSizeOfNegativeOne()0.001spassed
testIllegalSizeOfZero()0spassed
testInsertionAndValueOf()0spassed
testLegalSize()0spassed
testOperations()0spassed
testPeekAndPollMinIndex()0spassed
testPeekAndPollMinValue()0spassed
testRandomInsertionsAndPolls()0.172spassed
testRandomInsertionsAndRemovals()0.256spassed
testTestDecreaseKey()0spassed
testTestDecreaseKeyNoUpdate()0spassed
testTestIncreaseKey()0spassed
testTestIncreaseKeyNoUpdate()0.001spassed
testUpdateKeyValue()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest.html deleted file mode 100644 index ed22b1d5e..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -Test results - QuadTreeTest - - - - - -
-

QuadTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.058s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomizedQueryTests()1.057spassed
testCountingPoints()0spassed
testPointContainment()0.001spassed
testRectContainment()0spassed
testRectIntersection()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.queue.IntQueueTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.queue.IntQueueTest.html deleted file mode 100644 index 30b886812..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.queue.IntQueueTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - IntQueueTest - - - - - -
-

IntQueueTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.026s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testAll()0spassed
testEmptyQueue()0spassed
testPeekOneElement()0spassed
testRandom()0.026spassed
testofferOneElement()0spassed
testpollOneElement()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.queue.QueueTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.queue.QueueTest.html deleted file mode 100644 index 93bda84f3..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.queue.QueueTest.html +++ /dev/null @@ -1,218 +0,0 @@ - - - - - -Test results - QueueTest - - - - - -
-

QueueTest

- -
- - - - - -
-
- - - - - - - -
-
-
21
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.008s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestMethod nameDurationResult
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@68ad99fetestEmptyQueue(Queue)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@485e36bctestEmptyQueue(Queue)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@781f10f2testEmptyQueue(Queue)[3]0.001spassed
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@2320fa6ftestExhaustively(Queue)[1]0.005spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@3f6db3fbtestExhaustively(Queue)[2]0.001spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@52de51b6testExhaustively(Queue)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@2a79d4b1testOffer(Queue)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@2e9fda69testOffer(Queue)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@17cdf2d0testOffer(Queue)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@1755e85btestPeek(Queue)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@736d6a5ctestPeek(Queue)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@2371aacatestPeek(Queue)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@5553d0f5testPeekOnEmpty(Queue)[1]0.001spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@14dda234testPeekOnEmpty(Queue)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@3f390d63testPeekOnEmpty(Queue)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@5b529706testPoll(Queue)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@63fdab07testPoll(Queue)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@7b5a12aetestPoll(Queue)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.queue.ArrayQueue@74a6a609testPollOnEmpty(Queue)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.queue.LinkedQueue@2374d36atestPollOnEmpty(Queue)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.queue.IntQueue@54d18072testPollOnEmpty(Queue)[3]0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test.html deleted file mode 100644 index 6b3107de2..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - -Test results - GenericSegmentTree2Test - - - - - -
-

GenericSegmentTree2Test

- -
- - - - - -
-
- - - - - - - -
-
-
10
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.068s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
maxQueryMulUpdate_simple()0spassed
maxQuerySumUpdate_simple()0spassed
maxminQueryMulUpdate_simple()0spassed
minQueryMulUpdate_simple()0.001spassed
minQuerySumUpdates_simple()0spassed
testAllFunctionCombinations()0.067spassed
testSumQueryAssignUpdate_simple()0spassed
testSumQueryMulUpdate_simple()0spassed
testSumQuerySumUpdate_RangeUpdate()0spassed
testSumQuerySumUpdate_Simple()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest.html deleted file mode 100644 index d32081f10..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Test results - GenericSegmentTreeTest - - - - - -
-

GenericSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
1
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.169s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - -
TestDurationResult
testAllFunctionCombinations()0.169spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest.html deleted file mode 100644 index c7c652f2c..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Test results - MaxQuerySumUpdateSegmentTreeTest - - - - - -
-

MaxQuerySumUpdateSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
2
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.405s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest()0.001spassed
testRandomRangeSumUpdatesWithSumRangeQueries()0.404spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest.html deleted file mode 100644 index 7f109883e..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Test results - MinQueryAssignUpdateSegmentTreeTest - - - - - -
-

MinQueryAssignUpdateSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
1
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.076s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - -
TestDurationResult
testRandomRangeAssignUpdates1WithMinRangeQueries1()0.076spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest.html deleted file mode 100644 index 1df5dab8c..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Test results - MinQuerySumUpdateSegmentTreeTest - - - - - -
-

MinQuerySumUpdateSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
2
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.432s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest()0.001spassed
testRandomRangeSumUpdatesWithSumRangeQueries()0.431spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest.html deleted file mode 100644 index b39b7983e..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - SegmentTreeWithPointersTest - - - - - -
-

SegmentTreeWithPointersTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testAllSumQueries()0.001spassed
testIllegalSegmentTreeCreation1()0spassed
testIllegalSegmentTreeCreation2()0spassed
testSumQuery()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest.html deleted file mode 100644 index 014cdafbd..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Test results - SumQueryAssignUpdateSegmentTreeTest - - - - - -
-

SumQueryAssignUpdateSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
2
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.005s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest()0spassed
testRandomRangeAssignUpdatesWithSumRangeQueries()0.005spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest.html deleted file mode 100644 index d98eb39b9..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Test results - SumQueryMultiplicationUpdateSegmentTreeTest - - - - - -
-

SumQueryMultiplicationUpdateSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
2
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest()0spassed
testRandomRangeSumUpdatesWithSumRangeQueries()0.002spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest.html deleted file mode 100644 index 36adebcb5..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - SumQuerySumUpdateSegmentTreeTest - - - - - -
-

SumQuerySumUpdateSegmentTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.006s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest()0spassed
simpleTest2()0spassed
simpleTest3()0spassed
simpleTest4()0spassed
simpleTest5()0spassed
testRandomRangeSumUpdatesWithSumRangeQueries()0.006spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.set.HSetTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.set.HSetTest.html deleted file mode 100644 index 0b05e6911..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.set.HSetTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - HSetTest - - - - - -
-

HSetTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.085s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomizedSetTest()0.551spassed
randomizedSetTest2()0.534spassed
t()0spassed
testAddRemove()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.skiplist.SkipListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.skiplist.SkipListTest.html deleted file mode 100644 index cb2f354b4..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.skiplist.SkipListTest.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - -Test results - SkipListTest - - - - - -
-

SkipListTest

- -
- - - - - -
-
- - - - - - - -
-
-
10
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testDuplicate()0spassed
testFind()0spassed
testIndex()0.001spassed
testIndexWithNonExistingValue()0spassed
testInsertGreaterThanMaxValue()0spassed
testInsertLesserThanMinValue()0spassed
testRemoveHeadTail()0spassed
testRemoveNonExisting()0spassed
testSimpleFunctionality()0spassed
testSize()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest.html deleted file mode 100644 index fa62594bb..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -Test results - SparseTableTest - - - - - -
-

SparseTableTest

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.138s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomArrayTests()0.070spassed
simple()0spassed
smallRangeRandomArrayTests()0.036spassed
verifyIndexIsAlwaysLeftmostPositionWhenThereAreCollisions()0spassed
verifyIndexIsAlwaysLeftmostPosition_randomized()0.032spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.stack.StackTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.stack.StackTest.html deleted file mode 100644 index c601d7250..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.stack.StackTest.html +++ /dev/null @@ -1,230 +0,0 @@ - - - - - -Test results - StackTest - - - - - -
-

StackTest

- -
- - - - - -
-
- - - - - - - -
-
-
23
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestMethod nameDurationResult
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@39ad977dtestEmptyStack(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@6da00fb9testEmptyStack(Stack)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@a202ccbtestEmptyStack(Stack)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@17a87e37testExhaustively(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@3eeb318ftestExhaustively(Stack)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@20a14b55testExhaustively(Stack)[3]0spassed
testIteratorLifoOrder()testIteratorLifoOrder()0spassed
testIteratorOnEmptyStack()testIteratorOnEmptyStack()0spassed
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@13cf7d52testPeek(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@3a3e4afftestPeek(Stack)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@5d2a4eedtestPeek(Stack)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@62452cc9testPeekOnEmpty(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@5a7005dtestPeekOnEmpty(Stack)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@5bc9ba1dtestPeekOnEmpty(Stack)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@20f12539testPop(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@75b25825testPop(Stack)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@18025cedtestPop(Stack)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@476b0ae6testPopOnEmpty(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@549949betestPopOnEmpty(Stack)[2]0.001spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@4b3a45f1testPopOnEmpty(Stack)[3]0spassed
[1] com.williamfiset.algorithms.datastructures.stack.ListStack@57459491testPush(Stack)[1]0spassed
[2] com.williamfiset.algorithms.datastructures.stack.ArrayStack@3f0846c6testPush(Stack)[2]0spassed
[3] com.williamfiset.algorithms.datastructures.stack.IntStack@77a98a6atestPush(Stack)[3]0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest.html deleted file mode 100644 index 04bebd1e7..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - SuffixArrayTest - - - - - -
-

SuffixArrayTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
increasingLCPTest()0spassed
lcpTest1()0.001spassed
lcpTest2()0spassed
lcsUniqueCharacters()0spassed
saConstruction()0.001spassed
suffixArrayLength()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.trie.TrieTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.trie.TrieTest.html deleted file mode 100644 index e777debd9..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.trie.TrieTest.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - -Test results - TrieTest - - - - - -
-

TrieTest

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testBadTrieContains()0spassed
testBadTrieCount()0.001spassed
testBadTrieDelete1()0spassed
testBadTrieDelete2()0spassed
testBadTrieDelete3()0spassed
testBadTrieInsert()0spassed
testClear()0spassed
testContains()0spassed
testCount()0.001spassed
testDelete()0spassed
testEdgeCases()0spassed
testInsert()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest.html deleted file mode 100644 index 44a59dba3..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - -Test results - UnionFindTest - - - - - -
-

UnionFindTest

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestMethod nameDurationResult
Size: -1testBadUnionFindCreation(int)[1]0.002spassed
Size: -3463testBadUnionFindCreation(int)[2]0spassed
Size: 0testBadUnionFindCreation(int)[3]0spassed
testComponentSize()testComponentSize()0spassed
testConnectivity()testConnectivity()0spassed
testNumComponents()testNumComponents()0spassed
testSize()testSize()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.dp.CoinChangeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.dp.CoinChangeTest.html deleted file mode 100644 index 38e3fc190..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.dp.CoinChangeTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - CoinChangeTest - - - - - -
-

CoinChangeTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.026s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testCoinChange()0.012spassed
testCoinChangeSelectedCoins()0.007spassed
testCoinChangeSpaceEfficientSelectedCoins()0.007spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest.html deleted file mode 100644 index d5f1cd4ee..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - -Test results - WeightedMaximumCardinalityMatchingTest - - - - - -
-

WeightedMaximumCardinalityMatchingTest

- -
- - - - - -
-
- - - - - - - -
-
-
16
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.384s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testAgainstBruteForce_largeValues()0.206spassed
testAgainstBruteForce_smallValues()0.166spassed
testDisjointGraph()0spassed
testHarderWmcm_fromSlides()0.001spassed
testMatchingAndCostAreConsistent()0.004spassed
testMatchingOutputsUniqueNodes()0.007spassed
testMediumGraph_evenSize_fromSlides()0spassed
testMediumGraph_evenSize_nonPerfectMatchingFromSlides()0spassed
testMediumMatrix1()0spassed
testMediumMatrix2()0spassed
testNegativeEdgeWeights()0spassed
testNegativeEdge_smallerThanINFWeights()0spassed
testSmallGraph_oddSize()0spassed
testSmallMatrix1()0spassed
testSmallMatrix2()0spassed
testSmallestMatrix1()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest.html deleted file mode 100644 index cfc480594..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - -Test results - ConvexHullMonotoneChainsAlgorithmTest - - - - - -
-

ConvexHullMonotoneChainsAlgorithmTest

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
convexHullRedundantPoints()0spassed
repeatedSinglePoint()0spassed
test1Point()0spassed
test2Points()0spassed
test3Points()0.002spassed
testEmptyCase()0spassed
uniquePointsOnHull()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest.html deleted file mode 100644 index 39e731a14..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - MinimumCostConvexPolygonTriangulationTest - - - - - -
-

MinimumCostConvexPolygonTriangulationTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
MinimumCostConvexPolygonTriangulationBasicTest()0spassed
MinimumCostConvexPolygonTriangulationConvex()0spassed
MinimumCostConvexPolygonTriangulationInvalidTest()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest.html deleted file mode 100644 index b41709646..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - -Test results - ArticulationPointsAdjacencyListTest - - - - - -
-

ArticulationPointsAdjacencyListTest

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testBiConnectedGraph()0spassed
testButterflyGraph()0spassed
testButterflyGraphWithThreeWings()0spassed
testClosedCycle()0spassed
testDisconnectedGraph()0spassed
testMultiCycleGraph()0.001spassed
testSingleNodeGraph()0spassed
testStarGraphWithRootAsMiddle()0spassed
testStarGraphWithRootNotInMiddle()0spassed
testThreeNodeLineGraph()0spassed
testTreeCase()0spassed
testTwoNodeGraph()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest.html deleted file mode 100644 index d3d850ca3..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -Test results - BreadthFirstSearchAdjacencyListIterativeTest - - - - - -
-

BreadthFirstSearchAdjacencyListIterativeTest

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.179s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testNullGraphInput()0spassed
testShortestPathAgainstBellmanFord()0.179spassed
testSingletonGraph()0spassed
testThreeNodeGraph()0spassed
testTwoNodeGraph()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest.html deleted file mode 100644 index e82b98cb7..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - BridgesAdjacencyListIterativeTest - - - - - -
-

BridgesAdjacencyListIterativeTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
graphWithCyclesTest()0.001spassed
testDisconnectedGraph()0spassed
testGraphInSlides()0spassed
testTreeCase()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest.html deleted file mode 100644 index 5c5f2e372..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - BridgesAdjacencyListTest - - - - - -
-

BridgesAdjacencyListTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
graphWithCyclesTest()0spassed
testDisconnectedGraph()0spassed
testGraphInSlides()0.001spassed
testTreeCase()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest.html deleted file mode 100644 index 0c509118f..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - -Test results - EulerianPathDirectedEdgesAdjacencyListTest - - - - - -
-

EulerianPathDirectedEdgesAdjacencyListTest

- -
- - - - - -
-
- - - - - - - -
-
-
16
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testEmptyGraph()0spassed
testGraphAllEqualEdgeFrequency()0spassed
testGraphAllEqualEdgeFrequency2()0spassed
testGraphWithNoEdges()0spassed
testGraphWithUniquePath()0spassed
testInvalidGraph1()0.001spassed
testInvalidGraph2()0spassed
testInvalidGraph3()0spassed
testInvalidGraph4()0spassed
testMultiPartDisconnectedGraph()0spassed
testMultiPartDisconnectedGraph2()0spassed
testOneNodeMultipleSelfLoopsGraph()0spassed
testOneNodeSelfLoopGraph()0spassed
testPathUniqueStartAndEndNodes()0spassed
testSimpleGraph()0spassed
testSomewhatComplexPath()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest.html deleted file mode 100644 index edaf2c5da..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - -Test results - FloydWarshallSolverTest - - - - - -
-

FloydWarshallSolverTest

- -
- - - - - -
-
- - - - - - - -
-
-
8
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.323s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testApspAgainstBellmanFord_nonNegativeEdgeWeights()0.042spassed
testApspAgainstBellmanFord_withNegativeEdgeWeights()0.054spassed
testDirectedGraph()0spassed
testNegativeCycleGraph()0spassed
testNegativeCyclePropagation()0.002spassed
testPathReconstructionBellmanFord_nonNegativeEdgeWeights()0.225spassed
testSimpleNegativeCycleDetection()0spassed
testSingleNodeNegativeCycleDetection()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.KahnsTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.KahnsTest.html deleted file mode 100644 index 8778ccf4b..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.KahnsTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - KahnsTest - - - - - -
-

KahnsTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.084s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
cycleInGraph()0.001spassed
randomTest()0spassed
randomTests()0.083spassed
verifyIsTopsortOrdering()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.KosarajuTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.KosarajuTest.html deleted file mode 100644 index d60ed0599..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.KosarajuTest.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - -Test results - KosarajuTest - - - - - -
-

KosarajuTest

- -
- - - - - -
-
- - - - - - - -
-
-
8
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
nullGraphConstructor()0.001spassed
singletonCase()0spassed
testButterflyCase()0spassed
testDisjointTree()0spassed
testDisjointTreeFromHackerrank()0spassed
testFirstGraphInSlides()0spassed
testLastGraphInSlides()0spassed
testTwoDisjointComponents()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.SteinerTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.SteinerTreeTest.html deleted file mode 100644 index d2c317b47..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.SteinerTreeTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - SteinerTreeTest - - - - - -
-

SteinerTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testCycleGraph()0spassed
testNoTerminalNodesGivesZero()0spassed
testOneTerminalNodeGivesZero()0spassed
testTreeGraph()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest.html deleted file mode 100644 index 0d24dafc6..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - -Test results - TarjanSccSolverAdjacencyListTest - - - - - -
-

TarjanSccSolverAdjacencyListTest

- -
- - - - - -
-
- - - - - - - -
-
-
8
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
nullGraphConstructor()0spassed
singletonCase()0spassed
testButterflyCase()0spassed
testDisjointTree()0spassed
testDisjointTreeFromHackerrank()0spassed
testFirstGraphInSlides()0spassed
testLastGraphInSlides()0.001spassed
testTwoDisjointComponents()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest.html deleted file mode 100644 index 55eb562e3..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - -Test results - TravelingSalesmanProblemTest - - - - - -
-

TravelingSalesmanProblemTest

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.121s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testDifferentStartingNodes()0.012spassed
testDpVsBf()0.025spassed
testGeneratedTour()0.031spassed
testTspIterativeInvalidStartNode()0spassed
testTspIterativeNonSquareMatrix()0.001spassed
testTspIterativePerformance()0.023spassed
testTspIterativeSmallGraph()0.001spassed
testTspRecursiveInvalidStartNode()0spassed
testTspRecursiveNonSquareMatrix()0spassed
testTspRecursivePerformance()0.027spassed
testTspRecursiveSmallGraph()0.001spassed
testTsp_small1()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest.html deleted file mode 100644 index 103db7597..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - TwoSatSolverAdjacencyListTest - - - - - -
-

TwoSatSolverAdjacencyListTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testImpossibleFourNodeCycle()0spassed
testSimpleImpossible()0spassed
testSimpleSatisfiable()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest.html deleted file mode 100644 index ff8f5fd30..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - BipartiteGraphCheckAdjacencyListTest - - - - - -
-

BipartiteGraphCheckAdjacencyListTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testDisjointBipartiteGraphComponents()0spassed
testSingleton()0spassed
testSquareBipartiteGraph()0spassed
testSquareBipartiteGraphWithAdditionalEdge()0spassed
testTriangleGraph()0spassed
testTwoNodeGraph()0.001spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests.html deleted file mode 100644 index 897e8288d..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - -Test results - MaxFlowTests - - - - - -
-

MaxFlowTests

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.368s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
classicNetwork()0spassed
evilNetwork1()0.367spassed
lineGraphTest()0spassed
testDisconnectedGraph()0spassed
testFlowInEqualsFlowOut()0spassed
testMediumSizeFlowGraph()0spassed
testSmallFlowGraph()0.001spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests.html deleted file mode 100644 index 9b131c6d1..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Test results - MinCostMaxFlowTests - - - - - -
-

MinCostMaxFlowTests

- -
- - - - - -
-
- - - - - - - -
-
-
1
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - -
TestDurationResult
testNegativeCycle1()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest.html deleted file mode 100644 index ef9d7a481..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - LowestCommonAncestorEulerTourTest - - - - - -
-

LowestCommonAncestorEulerTourTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.229s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomizedLcaQueriesVsOtherImpl()0.228spassed
testLcaOfTheSameNodeIsItself()0spassed
testLcaTreeFromSlides1()0.001spassed
testLcaTreeFromSlides2()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest.html deleted file mode 100644 index 41473e07e..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - LowestCommonAncestorTest - - - - - -
-

LowestCommonAncestorTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testLcaOfTheSameNodeIsItself()0spassed
testLcaTreeFromSlides1()0spassed
testLcaTreeFromSlides2()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest.html deleted file mode 100644 index 330391de8..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Test results - RootingTreeTest - - - - - -
-

RootingTreeTest

- -
- - - - - -
-
- - - - - - - -
-
-
1
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - -
TestDurationResult
testSimpleRooting1()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest.html deleted file mode 100644 index 69ef30600..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - TreeCenterLongestPathImplTest - - - - - -
-

TreeCenterLongestPathImplTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest1()0spassed
simpleTest2()0spassed
simpleTest3()0spassed
simpleTest4()0spassed
singleton()0spassed
twoNodeTree()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest.html deleted file mode 100644 index 21ac95bf8..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - -Test results - TreeCenterTest - - - - - -
-

TreeCenterTest

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.858s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
simpleTest1()0spassed
simpleTest2()0spassed
simpleTest3()0spassed
simpleTest4()0spassed
singleton()0spassed
testTreeCenterVsOtherImpl()0.858spassed
twoNodeTree()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest.html deleted file mode 100644 index bf8e044ea..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - -Test results - TreeIsomorphismTest - - - - - -
-

TreeIsomorphismTest

- -
- - - - - -
-
- - - - - - - -
-
-
8
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.701s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
differentNumberOfNodes()0spassed
emptyTreeThrowsException()0.001spassed
simpleTest()0.001spassed
singletonTreesAreIsomorphic()0spassed
testIsomorphismEquivilanceAgainstOtherImpl()0.699spassed
testSimilarChains()0spassed
testSmall()0spassed
testTwoNodeTree()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest.html deleted file mode 100644 index 5297e22a3..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Test results - TreeIsomorphismWithBfsTest - - - - - -
-

TreeIsomorphismWithBfsTest

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
t()0spassed
testSimilarChains()0spassed
testSingleton()0spassed
testSlidesExample()0spassed
testSmall()0spassed
testTwoNodeTree()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.other.BitManipulationsTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.other.BitManipulationsTest.html deleted file mode 100644 index 6e69c0246..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.other.BitManipulationsTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - BitManipulationsTest - - - - - -
-

BitManipulationsTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
testClearBit()0spassed
testPowerOfTwo()0.001spassed
testSetBit()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.other.LazyRangeAdderTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.other.LazyRangeAdderTest.html deleted file mode 100644 index 78fab764c..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.other.LazyRangeAdderTest.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - -Test results - LazyRangeAdderTest - - - - - -
-

LazyRangeAdderTest

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.068s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomRangeAdditionTests()0.068spassed
rangeUpdateTest1()0spassed
rangeUpdateTest2()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.other.SlidingWindowMaximumTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.other.SlidingWindowMaximumTest.html deleted file mode 100644 index 553c45aa1..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.other.SlidingWindowMaximumTest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Test results - SlidingWindowMaximumTest - - - - - -
-

SlidingWindowMaximumTest

- -
- - - - - -
-
- - - - - - - -
-
-
2
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.231s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - -
TestDurationResult
randomizedSlidingWindowTest()0.231spassed
smallWindowTest()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.search.InterpolationSearchTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.search.InterpolationSearchTest.html deleted file mode 100644 index 8114af029..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.search.InterpolationSearchTest.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -Test results - InterpolationSearchTest - - - - - -
-

InterpolationSearchTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestMethod nameDurationResult
Search value: 2, Expected index: 2testCoverage(int, int)[1]0.001spassed
Search value: 5, Expected index: 5testCoverage(int, int)[2]0spassed
Search value: -1, Expected index: -1testCoverage(int, int)[3]0spassed
Search value: 8, Expected index: -1testCoverage(int, int)[4]0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.QuickSelectTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.QuickSelectTest.html deleted file mode 100644 index eebbb338c..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.QuickSelectTest.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Test results - QuickSelectTest - - - - - -
-

QuickSelectTest

- -
- - - - - -
-
- - - - - - - -
-
-
1
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.506s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - -
TestDurationResult
testQuickSelect()1.506spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.RadixSortTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.RadixSortTest.html deleted file mode 100644 index dc4fd695c..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.RadixSortTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - RadixSortTest - - - - - -
-

RadixSortTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.131s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
randomRadixSort_largeNumbers()0.069spassed
randomRadixSort_smallNumbers()0.061spassed
testCalculateNumberOfDigits()0spassed
testGetMax()0.001spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.SortingTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.SortingTest.html deleted file mode 100644 index fc939c252..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.sorting.SortingTest.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Test results - SortingTest - - - - - -
-

SortingTest

- -
- - - - - -
-
- - - - - - - -
-
-
2
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
2.061s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - -
TestDurationResult
verifySortingAlgorithms_smallNegativeIntegersOnly()1.005spassed
verifySortingAlgorithms_smallPositiveIntegersOnly()1.056spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest.html deleted file mode 100644 index a77b83054..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - -Test results - BoyerMooreStringSearchTest - - - - - -
-

BoyerMooreStringSearchTest

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.003s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
shouldReturnDynamicString()0.002spassed
shouldReturnEmptyForPatternLengthLargerThenText()0spassed
shouldReturnEmptyListOnNullInput()0spassed
shouldReturnMultipleOccurrences()0.001spassed
shouldReturnOneOccurrence()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.LongestCommonSubstringTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.LongestCommonSubstringTest.html deleted file mode 100644 index 84d79f337..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.LongestCommonSubstringTest.html +++ /dev/null @@ -1,191 +0,0 @@ - - - - - -Test results - LongestCommonSubstringTest - - - - - -
-

LongestCommonSubstringTest

- -
- - - - - -
-
- - - - - - - -
-
-
20
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.765s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
kValueTest()0spassed
kValueTest2()0spassed
kValueTest3()0spassed
kValueTest4()0spassed
multipleKValueTest1()0spassed
multipleKValueTest2()0.001spassed
multipleKValueTest3()0spassed
multipleKValueTest4()0spassed
multipleKValueTest5()0spassed
noLongestCommonSubstringTest()0.001spassed
randomLcssWithBruteForceSolver1()0.088spassed
randomLcssWithBruteForceSolver2()0.670spassed
randomLcssWithBruteForceSolver3()0.002spassed
simple1()0spassed
simple2()0spassed
simple3()0spassed
simple4()0spassed
simple5()0spassed
smallStrings()0spassed
testLargeAlphabet()0.003spassed
-
-
- -
- - diff --git a/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.ZAlgorithmTest.html b/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.ZAlgorithmTest.html deleted file mode 100644 index 58cf217de..000000000 --- a/build/reports/tests/test/classes/com.williamfiset.algorithms.strings.ZAlgorithmTest.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - -Test results - ZAlgorithmTest - - - - - -
-

ZAlgorithmTest

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Tests

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TestDurationResult
shouldReturnEmptyArrayOnNullOrEmptyInput()0spassed
textContainsASingleCharacterRepeated()0spassed
textContainsAllDistinctCharacters()0spassed
textContainsRepeatedPattern()0spassed
-
-
- -
- - diff --git a/build/reports/tests/test/css/base-style.css b/build/reports/tests/test/css/base-style.css deleted file mode 100644 index 3ae6c5877..000000000 --- a/build/reports/tests/test/css/base-style.css +++ /dev/null @@ -1,174 +0,0 @@ - -body { - margin: 0; - padding: 0; - font-family: sans-serif; - font-size: 12pt; -} - -body, a, a:visited { - color: #303030; -} - -#content { - padding: 30px 50px; -} - -#content h1 { - font-size: 160%; - margin-bottom: 10px; -} - -#footer { - margin-top: 100px; - font-size: 80%; - white-space: nowrap; -} - -#footer, #footer a { - color: #a0a0a0; -} - -#line-wrapping-toggle { - vertical-align: middle; -} - -#label-for-line-wrapping-toggle { - vertical-align: middle; -} - -ul { - margin-left: 0; -} - -h1, h2, h3 { - white-space: nowrap; -} - -h2 { - font-size: 120%; -} - -.tab-container .tab-container { - margin-left: 8px; -} - -ul.tabLinks { - padding: 0; - margin-bottom: 0; - overflow: auto; - min-width: 800px; - width: auto; - border-bottom: solid 1px #aaa; -} - -ul.tabLinks li { - float: left; - height: 100%; - list-style: none; - padding: 5px 10px; - border-radius: 7px 7px 0 0; - border: solid 1px transparent; - border-bottom: none; - margin-right: 6px; - background-color: #f0f0f0; -} - -ul.tabLinks li.deselected > a { - color: #6d6d6d; -} - -ul.tabLinks li:hover { - background-color: #fafafa; -} - -ul.tabLinks li.selected { - background-color: #c5f0f5; - border-color: #aaa; -} - -ul.tabLinks a { - font-size: 120%; - display: block; - outline: none; - text-decoration: none; - margin: 0; - padding: 0; -} - -ul.tabLinks li h2 { - margin: 0; - padding: 0; -} - -div.tab { -} - -div.selected { - display: block; -} - -div.deselected { - display: none; -} - -div.tab table { - min-width: 350px; - width: auto; - border-collapse: collapse; -} - -div.tab th, div.tab table { - border-bottom: solid 1px #d0d0d0; -} - -div.tab th { - text-align: left; - white-space: nowrap; - padding-left: 6em; -} - -div.tab th:first-child { - padding-left: 0; -} - -div.tab td { - white-space: nowrap; - padding-left: 6em; - padding-top: 5px; - padding-bottom: 5px; -} - -div.tab td:first-child { - padding-left: 0; -} - -div.tab td.numeric, div.tab th.numeric { - text-align: right; -} - -span.code { - display: inline-block; - margin-top: 0; - margin-bottom: 1em; -} - -span.code pre { - font-size: 11pt; - padding: 10px; - margin: 0; - background-color: #f7f7f7; - border: solid 1px #d0d0d0; - min-width: 700px; - width: auto; -} - -span.wrapped pre { - word-wrap: break-word; - white-space: pre-wrap; - word-break: break-all; -} - -label.hidden { - display: none; -} diff --git a/build/reports/tests/test/css/style.css b/build/reports/tests/test/css/style.css deleted file mode 100644 index ccb271c0d..000000000 --- a/build/reports/tests/test/css/style.css +++ /dev/null @@ -1,97 +0,0 @@ - -#summary { - margin-top: 30px; - margin-bottom: 40px; -} - -#summary table { - border-collapse: collapse; -} - -#summary td { - vertical-align: top; -} - -.breadcrumbs, .breadcrumbs a { - color: #606060; -} - -.infoBox { - width: 110px; - padding-top: 15px; - padding-bottom: 15px; - text-align: center; -} - -.infoBox p { - margin: 0; -} - -.counter, .percent { - font-size: 120%; - font-weight: bold; - margin-bottom: 8px; -} - -#duration { - width: 125px; -} - -#successRate, .summaryGroup { - border: solid 2px #d0d0d0; - -moz-border-radius: 10px; - border-radius: 10px; -} - -#successRate { - width: 140px; - margin-left: 35px; -} - -#successRate .percent { - font-size: 180%; -} - -.success, .success a { - color: #008000; -} - -div.success, #successRate.success { - background-color: #bbd9bb; - border-color: #008000; -} - -.failures, .failures a { - color: #b60808; -} - -.skipped, .skipped a { - color: #c09853; -} - -div.failures, #successRate.failures { - background-color: #ecdada; - border-color: #b60808; -} - -ul.linkList { - padding-left: 0; -} - -ul.linkList li { - list-style: none; - margin-bottom: 5px; -} - -.code { - position: relative; -} - -.clipboard-copy-btn { - position: absolute; - top: 8px; - right: 8px; - padding: 4px 8px; - font-size: 0.9em; - cursor: pointer; -} diff --git a/build/reports/tests/test/index.html b/build/reports/tests/test/index.html deleted file mode 100644 index ef5556896..000000000 --- a/build/reports/tests/test/index.html +++ /dev/null @@ -1,1133 +0,0 @@ - - - - - -Test results - Test Summary - - - - - -
-

Test Summary

-
- - - - - -
-
- - - - - - - -
-
-
563
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
33.590s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Packages

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PackageTestsFailuresIgnoredDurationSuccess rate
-com.williamfiset.algorithms.datastructures.balancedtree -330018.784s100%
-com.williamfiset.algorithms.datastructures.binarysearchtree -24000.017s100%
-com.williamfiset.algorithms.datastructures.bloomfilter -3000.021s100%
-com.williamfiset.algorithms.datastructures.fenwicktree -13000.079s100%
-com.williamfiset.algorithms.datastructures.fibonacciheap -12000.007s100%
-com.williamfiset.algorithms.datastructures.hashtable -54000.768s100%
-com.williamfiset.algorithms.datastructures.kdtree -16000.003s100%
-com.williamfiset.algorithms.datastructures.linkedlist -20001.317s100%
-com.williamfiset.algorithms.datastructures.priorityqueue -45001.058s100%
-com.williamfiset.algorithms.datastructures.quadtree -5001.058s100%
-com.williamfiset.algorithms.datastructures.queue -27000.034s100%
-com.williamfiset.algorithms.datastructures.segmenttree -30001.164s100%
-com.williamfiset.algorithms.datastructures.set -4001.085s100%
-com.williamfiset.algorithms.datastructures.skiplist -10000.001s100%
-com.williamfiset.algorithms.datastructures.sparsetable -5000.138s100%
-com.williamfiset.algorithms.datastructures.stack -23000.001s100%
-com.williamfiset.algorithms.datastructures.suffixarray -6000.002s100%
-com.williamfiset.algorithms.datastructures.trie -12000.002s100%
-com.williamfiset.algorithms.datastructures.unionfind -7000.002s100%
-com.williamfiset.algorithms.dp -19000.410s100%
-com.williamfiset.algorithms.geometry -10000.002s100%
-com.williamfiset.algorithms.graphtheory -88000.713s100%
-com.williamfiset.algorithms.graphtheory.networkflow -14000.369s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms -35001.788s100%
-com.williamfiset.algorithms.other -8000.300s100%
-com.williamfiset.algorithms.search -4000.001s100%
-com.williamfiset.algorithms.sorting -7003.698s100%
-com.williamfiset.algorithms.strings -29000.768s100%
-
-
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest -11001.223s100%
-com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest -150017.508s100%
-com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest -7000.053s100%
-com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest -19000.015s100%
-com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest -5000.002s100%
-com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest -3000.021s100%
-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest -7000.068s100%
-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest -6000.011s100%
-com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest -12000.007s100%
-com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest -12000.202s100%
-com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest -14000.080s100%
-com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest -15000.252s100%
-com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest -13000.234s100%
-com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest -16000.003s100%
-com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest -20001.317s100%
-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest -11000.037s100%
-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest -11000.024s100%
-com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest -6000.567s100%
-com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest -17000.430s100%
-com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest -5001.058s100%
-com.williamfiset.algorithms.datastructures.queue.IntQueueTest -6000.026s100%
-com.williamfiset.algorithms.datastructures.queue.QueueTest -21000.008s100%
-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test -10000.068s100%
-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest -1000.169s100%
-com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest -2000.405s100%
-com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest -1000.076s100%
-com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest -2000.432s100%
-com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest -4000.001s100%
-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest -2000.005s100%
-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest -2000.002s100%
-com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest -6000.006s100%
-com.williamfiset.algorithms.datastructures.set.HSetTest -4001.085s100%
-com.williamfiset.algorithms.datastructures.skiplist.SkipListTest -10000.001s100%
-com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest -5000.138s100%
-com.williamfiset.algorithms.datastructures.stack.StackTest -23000.001s100%
-com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest -6000.002s100%
-com.williamfiset.algorithms.datastructures.trie.TrieTest -12000.002s100%
-com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest -7000.002s100%
-com.williamfiset.algorithms.dp.CoinChangeTest -3000.026s100%
-com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest -16000.384s100%
-com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest -7000.002s100%
-com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest -3000s100%
-com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest -12000.001s100%
-com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest -5000.179s100%
-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest -4000.001s100%
-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest -4000.001s100%
-com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest -16000.001s100%
-com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest -8000.323s100%
-com.williamfiset.algorithms.graphtheory.KahnsTest -4000.084s100%
-com.williamfiset.algorithms.graphtheory.KosarajuTest -8000.001s100%
-com.williamfiset.algorithms.graphtheory.SteinerTreeTest -4000s100%
-com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest -8000.001s100%
-com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest -12000.121s100%
-com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest -3000s100%
-com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest -6000.001s100%
-com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests -7000.368s100%
-com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests -1000s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest -4000.229s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest -3000s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest -1000s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest -6000s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest -7000.858s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest -8000.701s100%
-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest -6000s100%
-com.williamfiset.algorithms.other.BitManipulationsTest -3000.001s100%
-com.williamfiset.algorithms.other.LazyRangeAdderTest -3000.068s100%
-com.williamfiset.algorithms.other.SlidingWindowMaximumTest -2000.231s100%
-com.williamfiset.algorithms.search.InterpolationSearchTest -4000.001s100%
-com.williamfiset.algorithms.sorting.QuickSelectTest -1001.506s100%
-com.williamfiset.algorithms.sorting.RadixSortTest -4000.131s100%
-com.williamfiset.algorithms.sorting.SortingTest -2002.061s100%
-com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest -5000.003s100%
-com.williamfiset.algorithms.strings.LongestCommonSubstringTest -20000.765s100%
-com.williamfiset.algorithms.strings.ZAlgorithmTest -4000s100%
-
-
- -
- - diff --git a/build/reports/tests/test/js/report.js b/build/reports/tests/test/js/report.js deleted file mode 100644 index e65821712..000000000 --- a/build/reports/tests/test/js/report.js +++ /dev/null @@ -1,243 +0,0 @@ -(function (window, document) { - "use strict"; - - function changeElementClass(element, classValue) { - if (element.getAttribute("className")) { - element.setAttribute("className", classValue); - } else { - element.setAttribute("class", classValue); - } - } - - function getClassAttribute(element) { - if (element.getAttribute("className")) { - return element.getAttribute("className"); - } else { - return element.getAttribute("class"); - } - } - - function addClass(element, classValue) { - changeElementClass(element, getClassAttribute(element) + " " + classValue); - } - - function removeClass(element, classValue) { - changeElementClass(element, getClassAttribute(element).replace(classValue, "")); - } - - function getCheckBox() { - return document.getElementById("line-wrapping-toggle"); - } - - function getLabelForCheckBox() { - return document.getElementById("label-for-line-wrapping-toggle"); - } - - function findCodeBlocks() { - const codeBlocks = []; - const tabContainers = getTabContainers(); - for (let i = 0; i < tabContainers.length; i++) { - const spans = tabContainers[i].getElementsByTagName("span"); - for (let i = 0; i < spans.length; ++i) { - if (spans[i].className.indexOf("code") >= 0) { - codeBlocks.push(spans[i]); - } - } - } - return codeBlocks; - } - - function forAllCodeBlocks(operation) { - const codeBlocks = findCodeBlocks(); - - for (let i = 0; i < codeBlocks.length; ++i) { - operation(codeBlocks[i], "wrapped"); - } - } - - function toggleLineWrapping() { - const checkBox = getCheckBox(); - - if (checkBox.checked) { - forAllCodeBlocks(addClass); - } else { - forAllCodeBlocks(removeClass); - } - } - - function initClipboardCopyButton() { - document.querySelectorAll(".clipboard-copy-btn").forEach((button) => { - const copyElementId = button.getAttribute("data-copy-element-id"); - const elementWithCodeToSelect = document.getElementById(copyElementId); - - button.addEventListener("click", () => { - const text = elementWithCodeToSelect.innerText.trim(); - navigator.clipboard - .writeText(text) - .then(() => { - button.textContent = "Copied!"; - setTimeout(() => { - button.textContent = "Copy"; - }, 1500); - }) - .catch((err) => { - alert("Failed to copy to the clipboard: '" + err.message + "'. Check JavaScript console for more details.") - console.warn("Failed to copy to the clipboard", err); - }); - }); - }); - } - - function initControls() { - if (findCodeBlocks().length > 0) { - const checkBox = getCheckBox(); - const label = getLabelForCheckBox(); - - checkBox.onclick = toggleLineWrapping; - checkBox.checked = false; - - removeClass(label, "hidden"); - } - - initClipboardCopyButton() - } - - class TabManager { - baseId; - tabs; - titles; - headers; - - constructor(baseId, tabs, titles, headers) { - this.baseId = baseId; - this.tabs = tabs; - this.titles = titles; - this.headers = headers; - } - - select(i) { - this.deselectAll(); - - changeElementClass(this.tabs[i], "tab selected"); - changeElementClass(this.headers[i], "selected"); - - while (this.headers[i].firstChild) { - this.headers[i].removeChild(this.headers[i].firstChild); - } - - const a = document.createElement("a"); - - a.appendChild(document.createTextNode(this.titles[i])); - this.headers[i].appendChild(a); - } - - deselectAll() { - for (let i = 0; i < this.tabs.length; i++) { - changeElementClass(this.tabs[i], "tab deselected"); - changeElementClass(this.headers[i], "deselected"); - - while (this.headers[i].firstChild) { - this.headers[i].removeChild(this.headers[i].firstChild); - } - - const a = document.createElement("a"); - - const id = this.baseId + "-tab" + i; - a.setAttribute("id", id); - a.setAttribute("href", "#tab" + i); - a.onclick = () => { - this.select(i); - return false; - }; - a.appendChild(document.createTextNode(this.titles[i])); - - this.headers[i].appendChild(a); - } - } - } - - function getTabContainers() { - const tabContainers = Array.from(document.getElementsByClassName("tab-container")); - - // Used by existing TabbedPageRenderer users, which have not adjusted to use TabsRenderer yet. - const legacyContainer = document.getElementById("tabs"); - if (legacyContainer) { - tabContainers.push(legacyContainer); - } - - return tabContainers; - } - - function initTabs() { - let tabGroups = 0; - - function createTab(num, container) { - const tabElems = findTabs(container); - const tabManager = new TabManager("tabs" + num, tabElems, findTitles(tabElems), findHeaders(container)); - tabManager.select(0); - } - - const tabContainers = getTabContainers(); - - for (let i = 0; i < tabContainers.length; i++) { - createTab(tabGroups, tabContainers[i]); - tabGroups++; - } - - return true; - } - - function findTabs(container) { - return findChildElements(container, "DIV", "tab"); - } - - function findHeaders(container) { - const owner = findChildElements(container, "UL", "tabLinks"); - return findChildElements(owner[0], "LI", null); - } - - function findTitles(tabs) { - const titles = []; - - for (let i = 0; i < tabs.length; i++) { - const tab = tabs[i]; - const header = findChildElements(tab, "H2", null)[0]; - - header.parentNode.removeChild(header); - - if (header.innerText) { - titles.push(header.innerText); - } else { - titles.push(header.textContent); - } - } - - return titles; - } - - function findChildElements(container, name, targetClass) { - const elements = []; - const children = container.childNodes; - - for (let i = 0; i < children.length; i++) { - const child = children.item(i); - - if (child.nodeType === 1 && child.nodeName === name) { - if (targetClass && child.className.indexOf(targetClass) < 0) { - continue; - } - - elements.push(child); - } - } - - return elements; - } - - // Entry point. - - window.onload = function() { - initTabs(); - initControls(); - }; -} (window, window.document)); diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.balancedtree.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.balancedtree.html deleted file mode 100644 index 54366cf87..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.balancedtree.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.balancedtree - - - - - -
-

Package com.williamfiset.algorithms.datastructures.balancedtree

- -
- - - - - -
-
- - - - - - - -
-
-
33
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
18.784s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-AVLTreeTest -11001.223s100%
-RedBlackTreeTest -150017.508s100%
-TreapTreeTest -7000.053s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.binarysearchtree.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.binarysearchtree.html deleted file mode 100644 index 14b40d265..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.binarysearchtree.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.binarysearchtree - - - - - -
-

Package com.williamfiset.algorithms.datastructures.binarysearchtree

- -
- - - - - -
-
- - - - - - - -
-
-
24
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.017s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-BinarySearchTreeTest -19000.015s100%
-SplayTreeTest -5000.002s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.bloomfilter.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.bloomfilter.html deleted file mode 100644 index cc45a0008..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.bloomfilter.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.bloomfilter - - - - - -
-

Package com.williamfiset.algorithms.datastructures.bloomfilter

- -
- - - - - -
-
- - - - - - - -
-
-
3
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.021s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-BloomFilterTest -3000.021s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.fenwicktree.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.fenwicktree.html deleted file mode 100644 index 0b76cfd32..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.fenwicktree.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.fenwicktree - - - - - -
-

Package com.williamfiset.algorithms.datastructures.fenwicktree

- -
- - - - - -
-
- - - - - - - -
-
-
13
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.079s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-FenwickTreeRangeQueryPointUpdateTest -7000.068s100%
-FenwickTreeRangeUpdatePointQueryTest -6000.011s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.fibonacciheap.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.fibonacciheap.html deleted file mode 100644 index 628c060c3..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.fibonacciheap.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.fibonacciheap - - - - - -
-

Package com.williamfiset.algorithms.datastructures.fibonacciheap

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.007s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-FibonacciHeapTest -12000.007s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.hashtable.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.hashtable.html deleted file mode 100644 index 59a6e81c6..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.hashtable.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.hashtable - - - - - -
-

Package com.williamfiset.algorithms.datastructures.hashtable

- -
- - - - - -
-
- - - - - - - -
-
-
54
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.768s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-HashTableDoubleHashingTest -12000.202s100%
-HashTableLinearProbingTest -14000.080s100%
-HashTableQuadraticProbingTest -15000.252s100%
-HashTableSeparateChainingTest -13000.234s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.kdtree.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.kdtree.html deleted file mode 100644 index 7268d7364..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.kdtree.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.kdtree - - - - - -
-

Package com.williamfiset.algorithms.datastructures.kdtree

- -
- - - - - -
-
- - - - - - - -
-
-
16
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.003s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-GeneralKDTreeTest -16000.003s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.linkedlist.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.linkedlist.html deleted file mode 100644 index c23cc541d..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.linkedlist.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.linkedlist - - - - - -
-

Package com.williamfiset.algorithms.datastructures.linkedlist

- -
- - - - - -
-
- - - - - - - -
-
-
20
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.317s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-LinkedListTest -20001.317s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.priorityqueue.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.priorityqueue.html deleted file mode 100644 index 1ffb57fda..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.priorityqueue.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.priorityqueue - - - - - -
-

Package com.williamfiset.algorithms.datastructures.priorityqueue

- -
- - - - - -
-
- - - - - - - -
-
-
45
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.058s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-BinaryHeapQuickRemovalsTest -11000.037s100%
-BinaryHeapTest -11000.024s100%
-MinDHeapTest -6000.567s100%
-MinIndexedBinaryHeapTest -17000.430s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.quadtree.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.quadtree.html deleted file mode 100644 index d1e32f4fc..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.quadtree.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.quadtree - - - - - -
-

Package com.williamfiset.algorithms.datastructures.quadtree

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.058s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-QuadTreeTest -5001.058s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.queue.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.queue.html deleted file mode 100644 index acda77bec..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.queue.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.queue - - - - - -
-

Package com.williamfiset.algorithms.datastructures.queue

- -
- - - - - -
-
- - - - - - - -
-
-
27
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.034s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-IntQueueTest -6000.026s100%
-QueueTest -21000.008s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.segmenttree.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.segmenttree.html deleted file mode 100644 index 49de9cd0f..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.segmenttree.html +++ /dev/null @@ -1,183 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.segmenttree - - - - - -
-

Package com.williamfiset.algorithms.datastructures.segmenttree

- -
- - - - - -
-
- - - - - - - -
-
-
30
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.164s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-GenericSegmentTree2Test -10000.068s100%
-GenericSegmentTreeTest -1000.169s100%
-MaxQuerySumUpdateSegmentTreeTest -2000.405s100%
-MinQueryAssignUpdateSegmentTreeTest -1000.076s100%
-MinQuerySumUpdateSegmentTreeTest -2000.432s100%
-SegmentTreeWithPointersTest -4000.001s100%
-SumQueryAssignUpdateSegmentTreeTest -2000.005s100%
-SumQueryMultiplicationUpdateSegmentTreeTest -2000.002s100%
-SumQuerySumUpdateSegmentTreeTest -6000.006s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.set.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.set.html deleted file mode 100644 index 24a96ad95..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.set.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.set - - - - - -
-

Package com.williamfiset.algorithms.datastructures.set

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.085s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-HSetTest -4001.085s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.skiplist.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.skiplist.html deleted file mode 100644 index a90561bbe..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.skiplist.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.skiplist - - - - - -
-

Package com.williamfiset.algorithms.datastructures.skiplist

- -
- - - - - -
-
- - - - - - - -
-
-
10
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-SkipListTest -10000.001s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.sparsetable.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.sparsetable.html deleted file mode 100644 index 7be91f331..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.sparsetable.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.sparsetable - - - - - -
-

Package com.williamfiset.algorithms.datastructures.sparsetable

- -
- - - - - -
-
- - - - - - - -
-
-
5
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.138s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-SparseTableTest -5000.138s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.stack.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.stack.html deleted file mode 100644 index 14374a222..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.stack.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.stack - - - - - -
-

Package com.williamfiset.algorithms.datastructures.stack

- -
- - - - - -
-
- - - - - - - -
-
-
23
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-StackTest -23000.001s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.suffixarray.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.suffixarray.html deleted file mode 100644 index 021b6c120..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.suffixarray.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.suffixarray - - - - - -
-

Package com.williamfiset.algorithms.datastructures.suffixarray

- -
- - - - - -
-
- - - - - - - -
-
-
6
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-SuffixArrayTest -6000.002s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.trie.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.trie.html deleted file mode 100644 index fbde6d9fe..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.trie.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.trie - - - - - -
-

Package com.williamfiset.algorithms.datastructures.trie

- -
- - - - - -
-
- - - - - - - -
-
-
12
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-TrieTest -12000.002s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.unionfind.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.unionfind.html deleted file mode 100644 index fe477d573..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.datastructures.unionfind.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.datastructures.unionfind - - - - - -
-

Package com.williamfiset.algorithms.datastructures.unionfind

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-UnionFindTest -7000.002s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.dp.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.dp.html deleted file mode 100644 index 32b45f9cb..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.dp.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.dp - - - - - -
-

Package com.williamfiset.algorithms.dp

- -
- - - - - -
-
- - - - - - - -
-
-
19
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.410s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-CoinChangeTest -3000.026s100%
-WeightedMaximumCardinalityMatchingTest -16000.384s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.geometry.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.geometry.html deleted file mode 100644 index 85e619cdb..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.geometry.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.geometry - - - - - -
-

Package com.williamfiset.algorithms.geometry

- -
- - - - - -
-
- - - - - - - -
-
-
10
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.002s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-ConvexHullMonotoneChainsAlgorithmTest -7000.002s100%
-MinimumCostConvexPolygonTriangulationTest -3000s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.html deleted file mode 100644 index f99dd3cf3..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.html +++ /dev/null @@ -1,213 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.graphtheory - - - - - -
-

Package com.williamfiset.algorithms.graphtheory

- -
- - - - - -
-
- - - - - - - -
-
-
88
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.713s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-ArticulationPointsAdjacencyListTest -12000.001s100%
-BreadthFirstSearchAdjacencyListIterativeTest -5000.179s100%
-BridgesAdjacencyListIterativeTest -4000.001s100%
-BridgesAdjacencyListTest -4000.001s100%
-EulerianPathDirectedEdgesAdjacencyListTest -16000.001s100%
-FloydWarshallSolverTest -8000.323s100%
-KahnsTest -4000.084s100%
-KosarajuTest -8000.001s100%
-SteinerTreeTest -4000s100%
-TarjanSccSolverAdjacencyListTest -8000.001s100%
-TravelingSalesmanProblemTest -12000.121s100%
-TwoSatSolverAdjacencyListTest -3000s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.networkflow.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.networkflow.html deleted file mode 100644 index be7448dff..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.networkflow.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.graphtheory.networkflow - - - - - -
-

Package com.williamfiset.algorithms.graphtheory.networkflow

- -
- - - - - -
-
- - - - - - - -
-
-
14
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.369s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-BipartiteGraphCheckAdjacencyListTest -6000.001s100%
-MaxFlowTests -7000.368s100%
-MinCostMaxFlowTests -1000s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.treealgorithms.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.treealgorithms.html deleted file mode 100644 index 73aa7bd33..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.graphtheory.treealgorithms.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.graphtheory.treealgorithms - - - - - -
-

Package com.williamfiset.algorithms.graphtheory.treealgorithms

- -
- - - - - -
-
- - - - - - - -
-
-
35
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
1.788s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-LowestCommonAncestorEulerTourTest -4000.229s100%
-LowestCommonAncestorTest -3000s100%
-RootingTreeTest -1000s100%
-TreeCenterLongestPathImplTest -6000s100%
-TreeCenterTest -7000.858s100%
-TreeIsomorphismTest -8000.701s100%
-TreeIsomorphismWithBfsTest -6000s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.other.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.other.html deleted file mode 100644 index a372f6078..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.other.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.other - - - - - -
-

Package com.williamfiset.algorithms.other

- -
- - - - - -
-
- - - - - - - -
-
-
8
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.300s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-BitManipulationsTest -3000.001s100%
-LazyRangeAdderTest -3000.068s100%
-SlidingWindowMaximumTest -2000.231s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.search.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.search.html deleted file mode 100644 index 037ac7f1d..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.search.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.search - - - - - -
-

Package com.williamfiset.algorithms.search

- -
- - - - - -
-
- - - - - - - -
-
-
4
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.001s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-InterpolationSearchTest -4000.001s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.sorting.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.sorting.html deleted file mode 100644 index 3e918c499..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.sorting.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.sorting - - - - - -
-

Package com.williamfiset.algorithms.sorting

- -
- - - - - -
-
- - - - - - - -
-
-
7
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
3.698s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-QuickSelectTest -1001.506s100%
-RadixSortTest -4000.131s100%
-SortingTest -2002.061s100%
-
-
- -
- - diff --git a/build/reports/tests/test/packages/com.williamfiset.algorithms.strings.html b/build/reports/tests/test/packages/com.williamfiset.algorithms.strings.html deleted file mode 100644 index 2bcb71c7a..000000000 --- a/build/reports/tests/test/packages/com.williamfiset.algorithms.strings.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -Test results - Package com.williamfiset.algorithms.strings - - - - - -
-

Package com.williamfiset.algorithms.strings

- -
- - - - - -
-
- - - - - - - -
-
-
29
-

tests

-
-
-
-
0
-

failures

-
-
-
-
0
-

ignored

-
-
-
-
0.768s
-

duration

-
-
-
-
-
-
100%
-

successful

-
-
-
-
- -
-

Classes

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ClassTestsFailuresIgnoredDurationSuccess rate
-BoyerMooreStringSearchTest -5000.003s100%
-LongestCommonSubstringTest -20000.765s100%
-ZAlgorithmTest -4000s100%
-
-
- -
- - diff --git a/build/scripts/Algorithms b/build/scripts/Algorithms deleted file mode 100755 index 92f9eb520..000000000 --- a/build/scripts/Algorithms +++ /dev/null @@ -1,250 +0,0 @@ -#!/bin/sh - -# -# Copyright © 2015 the original authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# - -############################################################################## -# -# Algorithms start up script for POSIX generated by Gradle. -# -# Important for running: -# -# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is -# noncompliant, but you have some other compliant shell such as ksh or -# bash, then to run this script, type that shell name before the whole -# command line, like: -# -# ksh Algorithms -# -# Busybox and similar reduced shells will NOT work, because this script -# requires all of these POSIX shell features: -# * functions; -# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», -# «${var#prefix}», «${var%suffix}», and «$( cmd )»; -# * compound commands having a testable exit status, especially «case»; -# * various built-in commands including «command», «set», and «ulimit». -# -# Important for patching: -# -# (2) This script targets any POSIX shell, so it avoids extensions provided -# by Bash, Ksh, etc; in particular arrays are avoided. -# -# The "traditional" practice of packing multiple parameters into a -# space-separated string is a well documented source of bugs and security -# problems, so this is (mostly) avoided, by progressively accumulating -# options in "$@", and eventually passing that to Java. -# -# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, -# and ALGORITHMS_OPTS) rely on word-splitting, this is performed explicitly; -# see the in-line comments for details. -# -# There are tweaks for specific operating systems such as AIX, CygWin, -# Darwin, MinGW, and NonStop. -# -# (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt -# within the Gradle project. -# -# You can find Gradle at https://github.com/gradle/gradle/. -# -############################################################################## - -# Attempt to set APP_HOME - -# Resolve links: $0 may be a link -app_path=$0 - -# Need this for daisy-chained symlinks. -while - APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path - [ -h "$app_path" ] -do - ls=$( ls -ld "$app_path" ) - link=${ls#*' -> '} - case $link in #( - /*) app_path=$link ;; #( - *) app_path=$APP_HOME$link ;; - esac -done - -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} -# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd -P "${APP_HOME:-./}.." > /dev/null && printf '%s\n' "$PWD" ) || exit - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD=maximum - -warn () { - echo "$*" -} >&2 - -die () { - echo - echo "$*" - echo - exit 1 -} >&2 - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -nonstop=false -case "$( uname )" in #( - CYGWIN* ) cygwin=true ;; #( - Darwin* ) darwin=true ;; #( - MSYS* | MINGW* ) msys=true ;; #( - NONSTOP* ) nonstop=true ;; -esac - -CLASSPATH=$APP_HOME/lib/Algorithms.jar - - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD=$JAVA_HOME/jre/sh/java - else - JAVACMD=$JAVA_HOME/bin/java - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD=java - if ! command -v java >/dev/null 2>&1 - then - die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -fi - -# Increase the maximum file descriptors if we can. -if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then - case $MAX_FD in #( - max*) - # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - MAX_FD=$( ulimit -H -n ) || - warn "Could not query maximum file descriptor limit" - esac - case $MAX_FD in #( - '' | soft) :;; #( - *) - # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - ulimit -n "$MAX_FD" || - warn "Could not set maximum file descriptor limit to $MAX_FD" - esac -fi - -# Collect all arguments for the java command, stacking in reverse order: -# * args from the command line -# * the main class name -# * -classpath -# * -D...appname settings -# * --module-path (only if needed) -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and ALGORITHMS_OPTS environment variables. - -# For Cygwin or MSYS, switch paths to Windows format before running java -if "$cygwin" || "$msys" ; then - APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) - - JAVACMD=$( cygpath --unix "$JAVACMD" ) - - # Now convert the arguments - kludge to limit ourselves to /bin/sh - for arg do - if - case $arg in #( - -*) false ;; # don't mess with options #( - /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath - [ -e "$t" ] ;; #( - *) false ;; - esac - then - arg=$( cygpath --path --ignore --mixed "$arg" ) - fi - # Roll the args list around exactly as many times as the number of - # args, so each arg winds up back in the position where it started, but - # possibly modified. - # - # NB: a `for` loop captures its iteration list before it begins, so - # changing the positional parameters here affects neither the number of - # iterations, nor the values presented in `arg`. - shift # remove old arg - set -- "$@" "$arg" # push replacement arg - done -fi - - -# Add default JVM options here. You can also use JAVA_OPTS and ALGORITHMS_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - -# Collect all arguments for the java command: -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, -# and any embedded shellness will be escaped. -# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be -# treated as '${Hostname}' itself on the command line. - -set -- \ - -classpath "$CLASSPATH" \ - com.williamfiset.algorithms.missingPackage.missingClass \ - "$@" - -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - -# Use "xargs" to parse quoted args. -# -# With -n1 it outputs one arg per line, with the quotes and backslashes removed. -# -# In Bash we could simply go: -# -# readarray ARGS < <( xargs -n1 <<<"$var" ) && -# set -- "${ARGS[@]}" "$@" -# -# but POSIX shell has neither arrays nor command substitution, so instead we -# post-process each arg (as a line of input to sed) to backslash-escape any -# character that might be a shell metacharacter, then use eval to reverse -# that process (while maintaining the separation between arguments), and wrap -# the whole thing up as a single "set" statement. -# -# This will of course break if any of these variables contains a newline or -# an unmatched quote. -# - -eval "set -- $( - printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $ALGORITHMS_OPTS" | - xargs -n1 | - sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | - tr '\n' ' ' - )" '"$@"' - -exec "$JAVACMD" "$@" diff --git a/build/scripts/Algorithms.bat b/build/scripts/Algorithms.bat deleted file mode 100644 index 14ff1e0b4..000000000 --- a/build/scripts/Algorithms.bat +++ /dev/null @@ -1,94 +0,0 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem -@rem SPDX-License-Identifier: Apache-2.0 -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem Algorithms startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -@rem This is normally unused -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME%.. - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and ALGORITHMS_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\lib\Algorithms.jar - - -@rem Execute Algorithms -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %ALGORITHMS_OPTS% -classpath "%CLASSPATH%" com.williamfiset.algorithms.missingPackage.missingClass %* - -:end -@rem End local scope for the variables with windows NT shell -if %ERRORLEVEL% equ 0 goto mainEnd - -:fail -rem Set variable ALGORITHMS_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -set EXIT_CODE=%ERRORLEVEL% -if %EXIT_CODE% equ 0 set EXIT_CODE=1 -if not ""=="%ALGORITHMS_EXIT_CONSOLE%" exit %EXIT_CODE% -exit /b %EXIT_CODE% - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest.xml deleted file mode 100644 index 5ec86efe9..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.AVLTreeTest.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest.xml deleted file mode 100644 index d81322a0e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.RedBlackTreeTest.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest.xml deleted file mode 100644 index d08caa7d5..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.balancedtree.TreapTreeTest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest.xml deleted file mode 100644 index 09a25d5cd..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.binarysearchtree.BinarySearchTreeTest.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest.xml deleted file mode 100644 index 447bba58a..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.binarysearchtree.SplayTreeTest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest.xml deleted file mode 100644 index 34def49af..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.bloomfilter.BloomFilterTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest.xml deleted file mode 100644 index 1531710ac..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeQueryPointUpdateTest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest.xml deleted file mode 100644 index 55cb2179c..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fenwicktree.FenwickTreeRangeUpdatePointQueryTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest.xml deleted file mode 100644 index 9ad1bb638..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.fibonacciheap.FibonacciHeapTest.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest.xml deleted file mode 100644 index fecec39a3..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableDoubleHashingTest.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest.xml deleted file mode 100644 index 610b1e594..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableLinearProbingTest.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest.xml deleted file mode 100644 index a2e6d6abf..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableQuadraticProbingTest.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest.xml deleted file mode 100644 index 3b35d2fbd..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.hashtable.HashTableSeparateChainingTest.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest.xml deleted file mode 100644 index 89bebb453..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.kdtree.GeneralKDTreeTest.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest.xml deleted file mode 100644 index e61179224..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.linkedlist.LinkedListTest.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest.xml deleted file mode 100644 index 11068d654..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapQuickRemovalsTest.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest.xml deleted file mode 100644 index 398226e25..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.BinaryHeapTest.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest.xml deleted file mode 100644 index 0c5879e6f..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.MinDHeapTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest.xml deleted file mode 100644 index 2fe9945a3..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.priorityqueue.MinIndexedBinaryHeapTest.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest.xml deleted file mode 100644 index e3ed945c1..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.quadtree.QuadTreeTest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.queue.IntQueueTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.queue.IntQueueTest.xml deleted file mode 100644 index 7b08bae9a..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.queue.IntQueueTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.queue.QueueTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.queue.QueueTest.xml deleted file mode 100644 index e9c329fe4..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.queue.QueueTest.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test.xml deleted file mode 100644 index 3f12dcf4e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTree2Test.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest.xml deleted file mode 100644 index cd2960b05..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest.xml deleted file mode 100644 index 7313f50e5..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest.xml deleted file mode 100644 index f955fe3ef..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest.xml deleted file mode 100644 index 47908b6c5..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest.xml deleted file mode 100644 index f3187743e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest.xml deleted file mode 100644 index 184b66256..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest.xml deleted file mode 100644 index 2c12402f1..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest.xml deleted file mode 100644 index cb1a9387f..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.set.HSetTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.set.HSetTest.xml deleted file mode 100644 index 5fc270bc3..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.set.HSetTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.skiplist.SkipListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.skiplist.SkipListTest.xml deleted file mode 100644 index eff1941e9..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.skiplist.SkipListTest.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest.xml deleted file mode 100644 index f85365745..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.sparsetable.SparseTableTest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.stack.StackTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.stack.StackTest.xml deleted file mode 100644 index ce6f4f0d7..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.stack.StackTest.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest.xml deleted file mode 100644 index a3fdd8b6e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.suffixarray.SuffixArrayTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.trie.TrieTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.trie.TrieTest.xml deleted file mode 100644 index df44412d3..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.trie.TrieTest.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest.xml deleted file mode 100644 index 941a42e86..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.datastructures.unionfind.UnionFindTest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.dp.CoinChangeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.dp.CoinChangeTest.xml deleted file mode 100644 index bfd9d8be3..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.dp.CoinChangeTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest.xml deleted file mode 100644 index 054078512..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.dp.WeightedMaximumCardinalityMatchingTest.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest.xml deleted file mode 100644 index e3e6af78b..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.geometry.ConvexHullMonotoneChainsAlgorithmTest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest.xml deleted file mode 100644 index 1af7d20c7..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.geometry.MinimumCostConvexPolygonTriangulationTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest.xml deleted file mode 100644 index 3c385eec0..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.ArticulationPointsAdjacencyListTest.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest.xml deleted file mode 100644 index 6c3c27b95..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BreadthFirstSearchAdjacencyListIterativeTest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest.xml deleted file mode 100644 index 72a65f166..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListIterativeTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest.xml deleted file mode 100644 index 4da3fd263..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.BridgesAdjacencyListTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest.xml deleted file mode 100644 index 44a2c6e86..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.EulerianPathDirectedEdgesAdjacencyListTest.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest.xml deleted file mode 100644 index bad1c09f8..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.FloydWarshallSolverTest.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.KahnsTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.KahnsTest.xml deleted file mode 100644 index 837b2b59d..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.KahnsTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.KosarajuTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.KosarajuTest.xml deleted file mode 100644 index bec9174d0..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.KosarajuTest.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.SteinerTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.SteinerTreeTest.xml deleted file mode 100644 index e78b34773..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.SteinerTreeTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest.xml deleted file mode 100644 index 1c490822e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TarjanSccSolverAdjacencyListTest.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest.xml deleted file mode 100644 index 7e79da509..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TravelingSalesmanProblemTest.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest.xml deleted file mode 100644 index 8e667b8d1..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.TwoSatSolverAdjacencyListTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest.xml deleted file mode 100644 index bb9ab9c80..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.BipartiteGraphCheckAdjacencyListTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests.xml deleted file mode 100644 index df40c54b1..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.MaxFlowTests.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests.xml deleted file mode 100644 index aafa37238..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.networkflow.MinCostMaxFlowTests.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest.xml deleted file mode 100644 index d7ee5e22c..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorEulerTourTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest.xml deleted file mode 100644 index 096d20201..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.LowestCommonAncestorTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest.xml deleted file mode 100644 index 6d44664ba..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.RootingTreeTest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest.xml deleted file mode 100644 index e6d5c1ff9..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest.xml deleted file mode 100644 index a84d0527e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest.xml deleted file mode 100644 index 00015cf0f..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest.xml deleted file mode 100644 index ce9a86c80..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.other.BitManipulationsTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.other.BitManipulationsTest.xml deleted file mode 100644 index b9a77b08e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.other.BitManipulationsTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.other.LazyRangeAdderTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.other.LazyRangeAdderTest.xml deleted file mode 100644 index 57159ae7e..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.other.LazyRangeAdderTest.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.other.SlidingWindowMaximumTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.other.SlidingWindowMaximumTest.xml deleted file mode 100644 index b8e8e83e9..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.other.SlidingWindowMaximumTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.search.InterpolationSearchTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.search.InterpolationSearchTest.xml deleted file mode 100644 index 65834a1c9..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.search.InterpolationSearchTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.QuickSelectTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.QuickSelectTest.xml deleted file mode 100644 index 6f3ac0d91..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.QuickSelectTest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.RadixSortTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.RadixSortTest.xml deleted file mode 100644 index 9c2868df6..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.RadixSortTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.SortingTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.SortingTest.xml deleted file mode 100644 index 7cb728b54..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.sorting.SortingTest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest.xml deleted file mode 100644 index f03d946c7..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.strings.BoyerMooreStringSearchTest.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.strings.LongestCommonSubstringTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.strings.LongestCommonSubstringTest.xml deleted file mode 100644 index a6fe829c0..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.strings.LongestCommonSubstringTest.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/test-results/test/TEST-com.williamfiset.algorithms.strings.ZAlgorithmTest.xml b/build/test-results/test/TEST-com.williamfiset.algorithms.strings.ZAlgorithmTest.xml deleted file mode 100644 index 9edbf8b01..000000000 --- a/build/test-results/test/TEST-com.williamfiset.algorithms.strings.ZAlgorithmTest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/build/test-results/test/binary/output.bin b/build/test-results/test/binary/output.bin deleted file mode 100644 index e69de29bb..000000000 diff --git a/build/test-results/test/binary/output.bin.idx b/build/test-results/test/binary/output.bin.idx deleted file mode 100644 index f76dd238a..000000000 Binary files a/build/test-results/test/binary/output.bin.idx and /dev/null differ diff --git a/build/test-results/test/binary/results.bin b/build/test-results/test/binary/results.bin deleted file mode 100644 index 1bad21be9..000000000 Binary files a/build/test-results/test/binary/results.bin and /dev/null differ diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin deleted file mode 100644 index 53f612d98..000000000 Binary files a/build/tmp/compileJava/previous-compilation-data.bin and /dev/null differ diff --git a/build/tmp/compileTestJava/previous-compilation-data.bin b/build/tmp/compileTestJava/previous-compilation-data.bin deleted file mode 100644 index 6586202a5..000000000 Binary files a/build/tmp/compileTestJava/previous-compilation-data.bin and /dev/null differ diff --git a/build/tmp/jar/MANIFEST.MF b/build/tmp/jar/MANIFEST.MF deleted file mode 100644 index 58630c02e..000000000 --- a/build/tmp/jar/MANIFEST.MF +++ /dev/null @@ -1,2 +0,0 @@ -Manifest-Version: 1.0 - diff --git a/build/tmp/spotless-register-dependencies b/build/tmp/spotless-register-dependencies deleted file mode 100644 index 56a6051ca..000000000 --- a/build/tmp/spotless-register-dependencies +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/misc/images/comment_img.png b/misc/images/comment_img.png deleted file mode 100644 index 3bcbfcab1..000000000 Binary files a/misc/images/comment_img.png and /dev/null differ diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArray.java b/src/main/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArray.java index 623a5a87f..1cafae26b 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArray.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArray.java @@ -1,7 +1,6 @@ /** - * Most of the time when you use an array it's to place integers inside of it, so why not have a - * super fast integer only array? This file contains an implementation of an integer only array - * which can outperform Java's ArrayList by about a factor of 10-15x! Enjoy! + * A fast dynamic array implementation for primitive ints, avoiding the boxing overhead of + * ArrayList<Integer>. * * @author William Fiset, william.alexandre.fiset@gmail.com */ @@ -11,8 +10,8 @@ public class IntArray implements Iterable { private static final int DEFAULT_CAP = 1 << 3; - public int[] arr; - public int len = 0; + private int[] arr; + private int len = 0; private int capacity = 0; // Initialize the array with a default capacity @@ -44,37 +43,38 @@ public boolean isEmpty() { return len == 0; } - // To get/set values without method call overhead you can do - // array_obj.arr[index] instead, you can gain about 10x the speed! public int get(int index) { + if (index < 0 || index >= len) throw new IndexOutOfBoundsException("Index: " + index); return arr[index]; } public void set(int index, int elem) { + if (index < 0 || index >= len) throw new IndexOutOfBoundsException("Index: " + index); arr[index] = elem; } // Add an element to this dynamic array public void add(int elem) { - if (len + 1 >= capacity) { + if (len == capacity) { if (capacity == 0) capacity = 1; - else capacity *= 2; // double the size - arr = java.util.Arrays.copyOf(arr, capacity); // pads with extra 0/null elements + else capacity *= 2; + arr = java.util.Arrays.copyOf(arr, capacity); } arr[len++] = elem; } // Removes the element at the specified index in this list. - // If possible, avoid calling this method as it take O(n) time - // to remove an element (since you have to reconstruct the array!) + // If possible, avoid calling this method as it takes O(n) time + // to remove an element (since you have to shift elements). public void removeAt(int rm_index) { + if (rm_index < 0 || rm_index >= len) + throw new IndexOutOfBoundsException("Index: " + rm_index); System.arraycopy(arr, rm_index + 1, arr, rm_index, len - rm_index - 1); --len; - --capacity; } // Search and remove an element if it is found in the array - // If possible, avoid calling this method as it take O(n) time + // If possible, avoid calling this method as it takes O(n) time public boolean remove(int elem) { for (int i = 0; i < len; i++) { if (arr[i] == elem) { @@ -97,9 +97,7 @@ public void reverse() { // Perform a binary search on this array to find an element in O(log(n)) time // Make sure this array is sorted! Returns a value < 0 if item is not found public int binarySearch(int key) { - int index = java.util.Arrays.binarySearch(arr, 0, len, key); - // if (index < 0) index = -index - 1; // If not found this will tell you where to insert - return index; + return java.util.Arrays.binarySearch(arr, 0, len, key); } // Sort this array @@ -130,16 +128,12 @@ public void remove() { @Override public String toString() { if (len == 0) return "[]"; - else { - StringBuilder sb = new StringBuilder(len).append("["); - for (int i = 0; i < len - 1; i++) sb.append(arr[i] + ", "); - return sb.append(arr[len - 1] + "]").toString(); - } + StringBuilder sb = new StringBuilder().append("["); + for (int i = 0; i < len - 1; i++) sb.append(arr[i]).append(", "); + return sb.append(arr[len - 1]).append("]").toString(); } - // Example usage public static void main(String[] args) { - IntArray ar = new IntArray(50); ar.add(3); ar.add(7); diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTree.java index e2628b65c..38682a3ee 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTree.java @@ -1,5 +1,5 @@ /** - * Run with: ./gradlew run -Palgorithm=datastructures.segmenttree.MaxQuerySumUpdateSegmentTree + * Run with: bazel run //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:MaxQuerySumUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTree.java index 3e233f8f3..88b4d85e0 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTree.java @@ -1,5 +1,5 @@ /** - * Run with: ./gradlew run -Palgorithm=datastructures.segmenttree.MinQueryAssignUpdateSegmentTree + * Run with: bazel run //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:MinQueryAssignUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTree.java index b3eb68f61..875f3cf7c 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTree.java @@ -1,5 +1,5 @@ /** - * Run with: ./gradlew run -Palgorithm=datastructures.segmenttree.MinQuerySumUpdateSegmentTree + * Run with: bazel run //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:MinQuerySumUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/RangeQueryPointUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/RangeQueryPointUpdateSegmentTree.java index 757e3e214..787263100 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/RangeQueryPointUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/RangeQueryPointUpdateSegmentTree.java @@ -2,8 +2,8 @@ * Simple segment tree implementation that supports a few range query operations (sum, min and max) * along with point updates on individual elements. * - *

Run with: ./gradlew run - * -Palgorithm=datastructures.segmenttree.RangeQueryPointUpdateSegmentTree + *

Run with: bazel run + * //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:RangeQueryPointUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTree.java index 015a8835c..268ba8d0c 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTree.java @@ -1,5 +1,5 @@ /** - * Run with: ./gradlew run -Palgorithm=datastructures.segmenttree.SumQueryAssignUpdateSegmentTree + * Run with: bazel run //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:SumQueryAssignUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTree.java index 4f2428eec..276ad5485 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTree.java @@ -1,5 +1,5 @@ /** - * Run with: ./gradlew run -Palgorithm=datastructures.segmenttree.SumQuerySumUpdateSegmentTree + * Run with: bazel run //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:SumQuerySumUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTree.java b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTree.java index dc3498008..6b31ba9e7 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTree.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTree.java @@ -1,5 +1,5 @@ /** - * Run with: ./gradlew run -Palgorithm=datastructures.segmenttree.SumQuerySumUpdateSegmentTree + * Run with: bazel run //src/main/java/com/williamfiset/algorithms/datastructures/segmenttree:SumQuerySumUpdateSegmentTree * *

Several thanks to cp-algorithms for their great article on segment trees: * https://cp-algorithms.com/data_structures/segment_tree.html diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/SparseTable.java b/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/SparseTable.java index 7f6926378..4ffade749 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/SparseTable.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/SparseTable.java @@ -9,7 +9,7 @@ * *

To run this file: * - *

./gradlew run -Pmain=com.williamfiset.algorithms.datastructures.sparsetable.SparseTable + *

bazel run //src/main/java/com/williamfiset/algorithms/datastructures/sparsetable:SparseTable * * @author William Fiset, william.alexandre.fiset@gmail.com */ diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/examples/MinSparseTable.java b/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/examples/MinSparseTable.java index 46dbcfbb6..bd6a710a9 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/examples/MinSparseTable.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/examples/MinSparseTable.java @@ -5,7 +5,7 @@ * $ git clone https://github.com/williamfiset/algorithms * *

Run:
- * $ ./gradlew run -Palgorithm=datastructures.sparsetable.examples.MinSparseTable + * $ bazel run //src/main/java/com/williamfiset/algorithms/datastructures/sparsetable/examples:MinSparseTable * *

Construction complexity: O(nlogn), query complexity: O(1) * diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/stack/ArrayStack.java b/src/main/java/com/williamfiset/algorithms/datastructures/stack/ArrayStack.java index a831c4ca8..78355a0f5 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/stack/ArrayStack.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/stack/ArrayStack.java @@ -4,6 +4,15 @@ import java.util.EmptyStackException; /** + * Array-based Stack + * + * A generic stack backed by a dynamically resizing array. Starts with + * capacity 16 and doubles when full. Push, pop, and peek are all O(1) + * amortized. + * + * Time: O(1) amortized for push, O(1) for pop and peek + * Space: O(n) + * * @author liujingkun */ public class ArrayStack implements Stack { diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/stack/IntStack.java b/src/main/java/com/williamfiset/algorithms/datastructures/stack/IntStack.java index 42c661c6a..bbfe0ef73 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/stack/IntStack.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/stack/IntStack.java @@ -1,56 +1,65 @@ +package com.williamfiset.algorithms.datastructures.stack; + +import java.util.ArrayDeque; +import java.util.EmptyStackException; + /** - * This file contains an implementation of an integer only stack which is extremely quick and - * lightweight. In terms of performance it can outperform java.util.ArrayDeque (Java's fastest stack - * implementation) by a factor of 50! See the benchmark test below for proof. However, the downside - * is you need to know an upper bound on the number of elements that will be inside the stack at any - * given time for it to work correctly. + * Integer-only Stack (fixed capacity) + * + * An extremely fast and lightweight stack for primitive ints. Can outperform + * java.util.ArrayDeque by a large factor due to avoiding boxing/unboxing. + * The trade-off is you must know an upper bound on the number of elements + * at construction time. + * + * Time: O(1) for push, pop, and peek + * Space: O(maxSize) * * @author William Fiset, william.alexandre.fiset@gmail.com */ -package com.williamfiset.algorithms.datastructures.stack; - public class IntStack implements Stack { private int[] ar; private int pos = 0; - // maxSize is the maximum number of items - // that can be in the queue at any given time + /** + * Creates a stack with the given maximum capacity. + * + * @param maxSize the maximum number of elements the stack can hold + */ public IntStack(int maxSize) { ar = new int[maxSize]; } - // Returns the number of elements insize the stack + @Override public int size() { return pos; } - // Returns true/false on whether the stack is empty + @Override public boolean isEmpty() { return pos == 0; } - // Returns the element at the top of the stack @Override public Integer peek() { + if (isEmpty()) throw new EmptyStackException(); return ar[pos - 1]; } - // Add an element to the top of the stack @Override public void push(Integer value) { + if (pos == ar.length) throw new RuntimeException("Stack overflow: capacity exceeded"); ar[pos++] = value; } - // Make sure you check that the stack is not empty before calling pop! @Override public Integer pop() { + if (isEmpty()) throw new EmptyStackException(); return ar[--pos]; } - // Example usage + // Example usage and benchmark public static void main(String[] args) { - IntStack s = new IntStack(5); s.push(1); @@ -72,24 +81,17 @@ public static void main(String[] args) { benchMarkTest(); } - // BenchMark IntStack vs ArrayDeque. private static void benchMarkTest() { - int n = 10000000; IntStack intStack = new IntStack(n); - // IntStack times at around 0.0324 seconds long start = System.nanoTime(); for (int i = 0; i < n; i++) intStack.push(i); for (int i = 0; i < n; i++) intStack.pop(); long end = System.nanoTime(); System.out.println("IntStack Time: " + (end - start) / 1e9); - // ArrayDeque times at around 1.438 seconds - // java.util.ArrayDeque arrayDeque = new java.util.ArrayDeque<>(); - // java.util.Stack arrayDeque = new java.util.Stack<>(); - java.util.ArrayDeque arrayDeque = new java.util.ArrayDeque<>(n); // strangely the - // ArrayQueue is slower when you give it an initial capacity. + ArrayDeque arrayDeque = new ArrayDeque<>(n); start = System.nanoTime(); for (int i = 0; i < n; i++) arrayDeque.push(i); for (int i = 0; i < n; i++) arrayDeque.pop(); @@ -97,7 +99,6 @@ private static void benchMarkTest() { System.out.println("ArrayDeque Time: " + (end - start) / 1e9); Stack listStack = new ListStack<>(); - start = System.nanoTime(); for (int i = 0; i < n; i++) listStack.push(i); for (int i = 0; i < n; i++) listStack.pop(); @@ -105,7 +106,6 @@ private static void benchMarkTest() { System.out.println("ListStack Time: " + (end - start) / 1e9); Stack arrayStack = new ArrayStack<>(); - start = System.nanoTime(); for (int i = 0; i < n; i++) arrayStack.push(i); for (int i = 0; i < n; i++) arrayStack.pop(); diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/stack/ListStack.java b/src/main/java/com/williamfiset/algorithms/datastructures/stack/ListStack.java index c5e8549ea..9bd2f793f 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/stack/ListStack.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/stack/ListStack.java @@ -1,60 +1,65 @@ +package com.williamfiset.algorithms.datastructures.stack; + +import java.util.EmptyStackException; +import java.util.Iterator; +import java.util.LinkedList; + /** - * A linked list implementation of a stack + * Linked List Stack + * + * A generic stack backed by a LinkedList. Supports iteration in LIFO order. + * All core operations (push, pop, peek) run in O(1) time. + * + * Time: O(1) for push, pop, and peek + * Space: O(n) * * @author William Fiset, william.alexandre.fiset@gmail.com */ -package com.williamfiset.algorithms.datastructures.stack; - public class ListStack implements Iterable, Stack { - private java.util.LinkedList list = new java.util.LinkedList(); + private LinkedList list = new LinkedList<>(); - // Create an empty stack public ListStack() {} - // Create a Stack with an initial element public ListStack(T firstElem) { push(firstElem); } - // Return the number of elements in the stack + @Override public int size() { return list.size(); } - // Check if the stack is empty + @Override public boolean isEmpty() { return size() == 0; } - // Push an element on the stack + @Override public void push(T elem) { list.addLast(elem); } - // Pop an element off the stack - // Throws an error is the stack is empty + @Override public T pop() { - if (isEmpty()) throw new java.util.EmptyStackException(); + if (isEmpty()) throw new EmptyStackException(); return list.removeLast(); } - // Peek the top of the stack without removing an element - // Throws an exception if the stack is empty + @Override public T peek() { - if (isEmpty()) throw new java.util.EmptyStackException(); + if (isEmpty()) throw new EmptyStackException(); return list.peekLast(); } - // Searches for the element starting from top of the stack - // Returns -1 if the element is not present in the stack + // Searches for the element starting from top of the stack. + // Returns -1 if the element is not present in the stack. public int search(T elem) { return list.lastIndexOf(elem); } - // Allow users to iterate through the stack using an iterator @Override - public java.util.Iterator iterator() { + public Iterator iterator() { return list.descendingIterator(); } } diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/stack/Stack.java b/src/main/java/com/williamfiset/algorithms/datastructures/stack/Stack.java index 61cacfcb5..e9221c401 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/stack/Stack.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/stack/Stack.java @@ -1,20 +1,35 @@ package com.williamfiset.algorithms.datastructures.stack; /** + * Stack Interface + * + * Defines the core operations for a last-in, first-out (LIFO) data structure. + * Implementations include array-based, linked-list-based, and primitive int variants. + * * @author liujingkun */ public interface Stack { - // return the number of elements in the stack + + /** Returns the number of elements in the stack. */ public int size(); - // return if the stack is empty + /** Returns true if the stack has no elements. */ public boolean isEmpty(); - // push the element on the stack + /** Pushes an element onto the top of the stack. */ public void push(T elem); - // pop the element off the stack + /** + * Removes and returns the top element of the stack. + * + * @throws java.util.EmptyStackException if the stack is empty + */ public T pop(); + /** + * Returns the top element without removing it. + * + * @throws java.util.EmptyStackException if the stack is empty + */ public T peek(); } diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/trie/Trie.java b/src/main/java/com/williamfiset/algorithms/datastructures/trie/Trie.java index 74f5af7ed..8f5c90752 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/trie/Trie.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/trie/Trie.java @@ -1,154 +1,146 @@ package com.williamfiset.algorithms.datastructures.trie; +import java.util.HashMap; +import java.util.Map; + +/** + * Trie (Prefix Tree) + * + * A tree-like data structure for efficient storage and retrieval of strings. + * Each node stores a character and a map of children. Supports insert, delete, + * prefix counting, and containment checks. + * + * Use cases: + * - Autocomplete and spell-checking + * - Prefix-based searching (e.g., IP routing, phone directories) + * - Detecting if a string is a prefix of another + * + * Time: O(L) for insert, delete, contains, and count, where L = key length + * Space: O(N * L) where N = number of keys, L = average key length + * + * @author William Fiset, william.alexandre.fiset@gmail.com + */ public class Trie { - // The root character is an arbitrarily picked - // character chosen for the root node. private final char rootCharacter = '\0'; private Node root = new Node(rootCharacter); private static class Node { - char ch; int count = 0; boolean isWordEnding = false; - java.util.Map children = new java.util.HashMap<>(); + Map children = new HashMap<>(); - public Node(char ch) { + Node(char ch) { this.ch = ch; } - - public void addChild(Node node, char c) { - children.put(c, node); - } } - // Returns true if the string being inserted - // contains a prefix already in the trie + /** + * Inserts a key into the trie with a given multiplicity. + * + * @param key the string to insert + * @param numInserts number of times to insert the key + * @return true if the exact word already existed in the trie before this insert + */ public boolean insert(String key, int numInserts) { - if (key == null) throw new IllegalArgumentException("Null not permitted in trie"); if (numInserts <= 0) throw new IllegalArgumentException("numInserts has to be greater than zero"); Node node = root; - boolean created_new_node = false; - boolean is_prefix = false; - - // Process each character one at a time for (int i = 0; i < key.length(); ++i) { - char ch = key.charAt(i); Node nextNode = node.children.get(ch); - // The next character in this string does not yet exist in trie if (nextNode == null) { - nextNode = new Node(ch); - node.addChild(nextNode, ch); - created_new_node = true; - - // Next character exists in trie. - } else { - if (nextNode.isWordEnding) is_prefix = true; + node.children.put(ch, nextNode); } node = nextNode; node.count += numInserts; } - // The root itself is not a word ending. It is simply a placeholder. - if (node != root) node.isWordEnding = true; + // Empty string is not a valid word + if (node == root) return false; + + boolean alreadyExisted = node.isWordEnding; + node.isWordEnding = true; - return is_prefix || !created_new_node; + return alreadyExisted; } - // Returns true if the string being inserted - // contains a prefix already in the trie + /** Inserts a key into the trie once. */ public boolean insert(String key) { return insert(key, 1); } - // This delete function allows you to delete keys from the trie - // (even those which were not previously inserted into the trie). - // This means that it may be the case that you delete a prefix which - // cuts off the access to numerous other strings starting with - // that prefix. + /** + * Deletes a key from the trie. If numDeletions exceeds the count of a + * node along the path, that subtree is pruned — cutting off access to + * all strings below that prefix. + * + * @param key the string to delete + * @param numDeletions number of times to delete the key + * @return true if the key existed and was deleted + */ public boolean delete(String key, int numDeletions) { - - // We cannot delete something that doesn't exist if (!contains(key)) return false; - if (numDeletions <= 0) throw new IllegalArgumentException("numDeletions has to be positive"); Node node = root; for (int i = 0; i < key.length(); i++) { - char ch = key.charAt(i); - Node curNode = node.children.get(ch); - curNode.count -= numDeletions; + Node cur = node.children.get(ch); + cur.count -= numDeletions; - // Cut this edge if the current node has a count <= 0 - // This means that all the prefixes below this point are inaccessible - if (curNode.count <= 0) { + // Prune this subtree if count drops to zero or below + if (cur.count <= 0) { node.children.remove(ch); - curNode.children = null; - curNode = null; return true; } - node = curNode; + node = cur; } return true; } + /** Deletes a key from the trie once. */ public boolean delete(String key) { return delete(key, 1); } - // Returns true if this string is contained inside the trie + /** + * Checks if a key (or prefix) exists in the trie with count > 0. + * + * @param key the string to search for + * @return true if the key is contained in the trie + */ public boolean contains(String key) { return count(key) != 0; } - // Returns the count of a particular prefix + /** + * Returns the insert count for a given prefix. + * + * @param key the prefix to look up + * @return the count, or 0 if the prefix is not in the trie + */ public int count(String key) { - if (key == null) throw new IllegalArgumentException("Null not permitted"); Node node = root; - - // Dig down into trie until we reach the bottom or stop - // early because the string we're looking for doesn't exist for (int i = 0; i < key.length(); i++) { - char ch = key.charAt(i); if (node == null) return 0; - node = node.children.get(ch); + node = node.children.get(key.charAt(i)); } - if (node != null) return node.count; - return 0; + return (node != null) ? node.count : 0; } - // Recursively clear the trie freeing memory to help GC - private void clear(Node node) { - - if (node == null) return; - - for (Character ch : node.children.keySet()) { - Node nextNode = node.children.get(ch); - clear(nextNode); - nextNode = null; - } - - node.children.clear(); - node.children = null; - } - - // Clear the trie + /** Clears all entries from the trie. */ public void clear() { - - root.children = null; root = new Node(rootCharacter); } } diff --git a/src/main/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFind.java b/src/main/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFind.java index a52227eaa..7d0a81dec 100644 --- a/src/main/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFind.java +++ b/src/main/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFind.java @@ -1,17 +1,30 @@ +package com.williamfiset.algorithms.datastructures.unionfind; + /** - * UnionFind/Disjoint Set data structure implementation. This code was inspired by the union find - * implementation found in 'Algorithms Fourth Edition' by Robert Sedgewick and Kevin Wayne. + * Union-Find (Disjoint Set) + * + * Tracks a set of elements partitioned into disjoint subsets. Supports + * near-constant-time union and find operations using union by size and + * path compression. + * + * Use cases: + * - Kruskal's minimum spanning tree algorithm + * - Detecting cycles in undirected graphs + * - Connected components in dynamic graphs + * + * Inspired by 'Algorithms Fourth Edition' by Sedgewick and Wayne. + * + * Time: O(α(n)) amortized per find/unify, where α is the inverse Ackermann function + * Space: O(n) * * @author William Fiset, william.alexandre.fiset@gmail.com */ -package com.williamfiset.algorithms.datastructures.unionfind; - public class UnionFind { // The number of elements in this union find private int size; - // Used to track the size of each of the component + // Used to track the size of each component private int[] sz; // id[i] points to the parent of i, if id[i] = i then i is a root node @@ -20,8 +33,12 @@ public class UnionFind { // Tracks the number of components in the union find private int numComponents; + /** + * Creates a Union-Find with n elements, each in its own component. + * + * @param size the number of elements + */ public UnionFind(int size) { - if (size <= 0) throw new IllegalArgumentException("Size <= 0 is not allowed"); this.size = numComponents = size; @@ -34,16 +51,18 @@ public UnionFind(int size) { } } - // Find which component/set 'p' belongs to, takes amortized constant time. + /** + * Finds the root of the component containing element p. + * Uses path compression to flatten the tree structure. + * + * @param p the element to find the root of + * @return the root of the component containing p + */ public int find(int p) { - - // Find the root of the component/set int root = p; while (root != id[root]) root = id[root]; - // Compress the path leading back to the root. - // Doing this operation is called "path compression" - // and is what gives us amortized time complexity. + // Path compression: point every node along the path directly to root while (p != root) { int next = id[p]; id[p] = root; @@ -53,43 +72,46 @@ public int find(int p) { return root; } - // This is an alternative recursive formulation for the find method + // Alternative recursive formulation for find with path compression: // public int find(int p) { // if (p == id[p]) return p; // return id[p] = find(id[p]); // } - // Return whether or not the elements 'p' and - // 'q' are in the same components/set. + /** Returns true if elements p and q are in the same component. */ public boolean connected(int p, int q) { return find(p) == find(q); } - // Return the size of the components/set 'p' belongs to + /** Returns the size of the component containing element p. */ public int componentSize(int p) { return sz[find(p)]; } - // Return the number of elements in this UnionFind/Disjoint set + /** Returns the total number of elements. */ public int size() { return size; } - // Returns the number of remaining components/sets + /** Returns the number of disjoint components. */ public int components() { return numComponents; } - // Unify the components/sets containing elements 'p' and 'q' + /** + * Merges the components containing elements p and q. + * Uses union by size to keep the tree balanced. + * + * @param p an element in the first component + * @param q an element in the second component + */ public void unify(int p, int q) { - - // These elements are already in the same group! - if (connected(p, q)) return; - int root1 = find(p); int root2 = find(q); - // Merge smaller component/set into the larger one. + if (root1 == root2) return; + + // Merge smaller component into the larger one if (sz[root1] < sz[root2]) { sz[root2] += sz[root1]; id[root1] = root2; @@ -100,8 +122,6 @@ public void unify(int p, int q) { sz[root2] = 0; } - // Since the roots found are different we know that the - // number of components/sets has decreased by one numComponents--; } } diff --git a/src/main/java/com/williamfiset/algorithms/dp/CoinChange.java b/src/main/java/com/williamfiset/algorithms/dp/CoinChange.java index 5daa688d7..ba4a7f211 100644 --- a/src/main/java/com/williamfiset/algorithms/dp/CoinChange.java +++ b/src/main/java/com/williamfiset/algorithms/dp/CoinChange.java @@ -7,7 +7,7 @@ * *

Run locally: * - *

./gradlew run -Palgorithm=dp.CoinChange + *

bazel run //src/main/java/com/williamfiset/algorithms/dp:CoinChange * * @author William Fiset, william.alexandre.fiset@gmail.com */ diff --git a/src/main/java/com/williamfiset/algorithms/dp/MinimumWeightPerfectMatching.java b/src/main/java/com/williamfiset/algorithms/dp/MinimumWeightPerfectMatching.java index 6d3ed625e..64932209a 100644 --- a/src/main/java/com/williamfiset/algorithms/dp/MinimumWeightPerfectMatching.java +++ b/src/main/java/com/williamfiset/algorithms/dp/MinimumWeightPerfectMatching.java @@ -5,7 +5,7 @@ * *

Tested against: UVA 10911 - Forming Quiz Teams * - *

To Run: ./gradlew run -Palgorithm=dp.MinimumWeightPerfectMatching + *

To Run: bazel run //src/main/java/com/williamfiset/algorithms/dp:MinimumWeightPerfectMatching * *

Time Complexity: O(n * 2^n) * diff --git a/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingIterative.java b/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingIterative.java index 2ca85a2fb..d22921c0c 100644 --- a/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingIterative.java +++ b/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingIterative.java @@ -5,7 +5,7 @@ * *

Tested against: UVA 10911 - Forming Quiz Teams * - *

To Run: ./gradlew run -Palgorithm=dp.WeightedMaximumCardinalityMatchingIterative + *

To Run: bazel run //src/main/java/com/williamfiset/algorithms/dp:WeightedMaximumCardinalityMatchingIterative * *

Time Complexity: O(n^2 * 2^n) * diff --git a/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingRecursive.java b/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingRecursive.java index d3dc1a1d7..45b398f48 100644 --- a/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingRecursive.java +++ b/src/main/java/com/williamfiset/algorithms/dp/WeightedMaximumCardinalityMatchingRecursive.java @@ -5,7 +5,7 @@ * *

Tested against: UVA 10911 - Forming Quiz Teams * - *

To Run: ./gradlew run -Palgorithm=dp.WeightedMaximumCardinalityMatchingRecursive + *

To Run: bazel run //src/main/java/com/williamfiset/algorithms/dp:WeightedMaximumCardinalityMatchingRecursive * *

Time Complexity: O(n * 2^n) * diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/ChinesePostmanProblem.java b/src/main/java/com/williamfiset/algorithms/graphtheory/ChinesePostmanProblem.java index 341888441..060af1a34 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/ChinesePostmanProblem.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/ChinesePostmanProblem.java @@ -3,7 +3,7 @@ * *

Still need to: - Implemented undirected edge eulerain path algo * - *

./gradlew run -Palgorithm=graphtheory.ChinesePostmanProblem + *

bazel run //src/main/java/com/williamfiset/algorithms/graphtheory:ChinesePostmanProblem */ package com.williamfiset.algorithms.graphtheory; diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathDirectedEdgesAdjacencyList.java b/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathDirectedEdgesAdjacencyList.java index 12fd97dd8..a919bf961 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathDirectedEdgesAdjacencyList.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathDirectedEdgesAdjacencyList.java @@ -5,7 +5,7 @@ *

Test against: https://open.kattis.com/problems/eulerianpath * http://codeforces.com/contest/508/problem/D * - *

Run: ./gradlew run -Palgorithm=graphtheory.EulerianPathDirectedEdgesAdjacencyList + *

Run: bazel run //src/main/java/com/williamfiset/algorithms/graphtheory:EulerianPathDirectedEdgesAdjacencyList * *

Time Complexity: O(E) * diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathUndirectedEdgesAdjacencyList.java b/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathUndirectedEdgesAdjacencyList.java index f7f14bf72..0686bea13 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathUndirectedEdgesAdjacencyList.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/EulerianPathUndirectedEdgesAdjacencyList.java @@ -3,7 +3,7 @@ * *

This impl is still a WIP * - *

Run: ./gradlew run -Palgorithm=graphtheory.EulerianPathUndirectedEdgesAdjacencyList + *

Run: bazel run //src/main/java/com/williamfiset/algorithms/graphtheory:EulerianPathUndirectedEdgesAdjacencyList * *

Time Complexity: O(E) * diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/Kahns.java b/src/main/java/com/williamfiset/algorithms/graphtheory/Kahns.java index 6a0bc57ce..475b21616 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/Kahns.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/Kahns.java @@ -8,7 +8,7 @@ * *

Verified against: https://open.kattis.com/problems/builddeps * - *

./gradlew run -Palgorithm=graphtheory.Kahns + *

bazel run //src/main/java/com/williamfiset/algorithms/graphtheory:Kahns * *

Time complexity: O(V+E) * diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/Kosaraju.java b/src/main/java/com/williamfiset/algorithms/graphtheory/Kosaraju.java index 33471a126..1a4b2dc1f 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/Kosaraju.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/Kosaraju.java @@ -8,7 +8,7 @@ *

  • https://open.kattis.com/problems/runningmom * * - *

    ./gradlew run -Palgorithm=graphtheory.Kosaraju + *

    bazel run //src/main/java/com/williamfiset/algorithms/graphtheory:Kosaraju */ package com.williamfiset.algorithms.graphtheory; diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/networkflow/Dinics.java b/src/main/java/com/williamfiset/algorithms/graphtheory/networkflow/Dinics.java index 8ae448050..ff0a1fb8b 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/networkflow/Dinics.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/networkflow/Dinics.java @@ -4,7 +4,7 @@ * *

    Run script: * - *

    $ ./gradlew run -Palgorithm=graphtheory.networkflow.Dinics + *

    $ bazel run //src/main/java/com/williamfiset/algorithms/graphtheory/networkflow:Dinics * *

    Time Complexity: O(EV²) * diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImpl.java b/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImpl.java index 8b3a2265a..71ee1e2c7 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImpl.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImpl.java @@ -1,8 +1,8 @@ /** * Finds the center(s) of a tree by finding the longest path through the tree. * - *

    ./gradlew run - * -Pmain=com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImpl + *

    bazel run + * //src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms:TreeCenterLongestPathImpl * * @author William Fiset, william.alexandre.fiset@gmail.com */ diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeHeight.java b/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeHeight.java index d9138586d..c294f48b2 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeHeight.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeHeight.java @@ -5,7 +5,7 @@ * $ git clone https://github.com/williamfiset/Algorithms * *

    Run:
    - * $ ./gradlew run -Palgorithm=graphtheory.treealgorithms.examples.TreeHeight + * $ bazel run //src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples:TreeHeight * *

    Time Complexity: O(n) * diff --git a/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeSum.java b/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeSum.java index ca1105393..6ff29d6b3 100644 --- a/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeSum.java +++ b/src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples/TreeSum.java @@ -5,7 +5,7 @@ * $ git clone https://github.com/williamfiset/Algorithms * *

    Run:
    - * $ ./gradlew run -Palgorithm=graphtheory.treealgorithms.examples.TreeSum + * $ bazel run //src/main/java/com/williamfiset/algorithms/graphtheory/treealgorithms/examples:TreeSum * *

    Time Complexity: O(n) * diff --git a/src/main/java/com/williamfiset/algorithms/strings/BoyerMooreStringSearch.java b/src/main/java/com/williamfiset/algorithms/strings/BoyerMooreStringSearch.java index 1b99da2b7..94c4a6cca 100644 --- a/src/main/java/com/williamfiset/algorithms/strings/BoyerMooreStringSearch.java +++ b/src/main/java/com/williamfiset/algorithms/strings/BoyerMooreStringSearch.java @@ -1,7 +1,7 @@ /** * Performs Boyer-Moore search on a given string with a given pattern * - *

    ./gradlew run -Palgorithm=strings.BoyerMooreStringSearch + *

    bazel run //src/main/java/com/williamfiset/algorithms/strings:BoyerMooreStringSearch */ package com.williamfiset.algorithms.strings; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/dynamicarray/BUILD b/src/test/java/com/williamfiset/algorithms/datastructures/dynamicarray/BUILD new file mode 100644 index 000000000..8c29df560 --- /dev/null +++ b/src/test/java/com/williamfiset/algorithms/datastructures/dynamicarray/BUILD @@ -0,0 +1,24 @@ +load("@rules_java//java:defs.bzl", "java_test") + +JUNIT5_DEPS = [ + "@maven//:org_junit_jupiter_junit_jupiter_api", + "@maven//:org_junit_jupiter_junit_jupiter_engine", +] + +JUNIT5_RUNTIME_DEPS = [ + "@maven//:org_junit_platform_junit_platform_console", +] + +java_test( + name = "IntArrayTest", + srcs = ["IntArrayTest.java"], + main_class = "org.junit.platform.console.ConsoleLauncher", + use_testrunner = False, + args = ["--select-class=com.williamfiset.algorithms.datastructures.dynamicarray.IntArrayTest"], + runtime_deps = JUNIT5_RUNTIME_DEPS, + deps = [ + "//src/main/java/com/williamfiset/algorithms/datastructures/dynamicarray:dynamicarray", + "@maven//:com_google_guava_guava", + "@maven//:com_google_truth_truth", + ] + JUNIT5_DEPS, +) diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArrayTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArrayTest.java new file mode 100644 index 000000000..5ced4a090 --- /dev/null +++ b/src/test/java/com/williamfiset/algorithms/datastructures/dynamicarray/IntArrayTest.java @@ -0,0 +1,282 @@ +package com.williamfiset.algorithms.datastructures.dynamicarray; + +import static com.google.common.truth.Truth.assertThat; +import static org.junit.jupiter.api.Assertions.assertThrows; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import org.junit.jupiter.api.*; + +public class IntArrayTest { + + @Test + public void testEmptyArray() { + IntArray ar = new IntArray(); + assertThat(ar.size()).isEqualTo(0); + assertThat(ar.isEmpty()).isTrue(); + } + + @Test + public void testIllegalCapacity() { + assertThrows(IllegalArgumentException.class, () -> new IntArray(-1)); + } + + @Test + public void testNullArrayConstructor() { + assertThrows(IllegalArgumentException.class, () -> new IntArray(null)); + } + + @Test + public void testZeroCapacity() { + IntArray ar = new IntArray(0); + assertThat(ar.isEmpty()).isTrue(); + ar.add(5); + assertThat(ar.size()).isEqualTo(1); + assertThat(ar.get(0)).isEqualTo(5); + } + + @Test + public void testConstructFromArray() { + IntArray ar = new IntArray(new int[] {1, 2, 3, 4}); + assertThat(ar.size()).isEqualTo(4); + assertThat(ar.get(0)).isEqualTo(1); + assertThat(ar.get(3)).isEqualTo(4); + } + + @Test + public void testConstructFromArrayIsCopy() { + int[] original = {1, 2, 3}; + IntArray ar = new IntArray(original); + original[0] = 99; + assertThat(ar.get(0)).isEqualTo(1); + } + + @Test + public void testAdd() { + IntArray ar = new IntArray(); + ar.add(1); + ar.add(2); + ar.add(3); + assertThat(ar.size()).isEqualTo(3); + assertThat(ar.get(0)).isEqualTo(1); + assertThat(ar.get(1)).isEqualTo(2); + assertThat(ar.get(2)).isEqualTo(3); + } + + @Test + public void testAddBeyondCapacity() { + IntArray ar = new IntArray(2); + for (int i = 0; i < 100; i++) { + ar.add(i); + } + assertThat(ar.size()).isEqualTo(100); + for (int i = 0; i < 100; i++) { + assertThat(ar.get(i)).isEqualTo(i); + } + } + + @Test + public void testGetOutOfBounds() { + IntArray ar = new IntArray(); + ar.add(1); + assertThrows(IndexOutOfBoundsException.class, () -> ar.get(-1)); + assertThrows(IndexOutOfBoundsException.class, () -> ar.get(1)); + } + + @Test + public void testGetOnEmpty() { + IntArray ar = new IntArray(); + assertThrows(IndexOutOfBoundsException.class, () -> ar.get(0)); + } + + @Test + public void testSet() { + IntArray ar = new IntArray(new int[] {1, 2, 3}); + ar.set(1, 99); + assertThat(ar.get(1)).isEqualTo(99); + } + + @Test + public void testSetOutOfBounds() { + IntArray ar = new IntArray(); + ar.add(1); + assertThrows(IndexOutOfBoundsException.class, () -> ar.set(-1, 5)); + assertThrows(IndexOutOfBoundsException.class, () -> ar.set(1, 5)); + } + + @Test + public void testRemoveAt() { + IntArray ar = new IntArray(new int[] {10, 20, 30, 40}); + ar.removeAt(1); + assertThat(ar.size()).isEqualTo(3); + assertThat(ar.get(0)).isEqualTo(10); + assertThat(ar.get(1)).isEqualTo(30); + assertThat(ar.get(2)).isEqualTo(40); + } + + @Test + public void testRemoveAtFirst() { + IntArray ar = new IntArray(new int[] {10, 20, 30}); + ar.removeAt(0); + assertThat(ar.size()).isEqualTo(2); + assertThat(ar.get(0)).isEqualTo(20); + } + + @Test + public void testRemoveAtLast() { + IntArray ar = new IntArray(new int[] {10, 20, 30}); + ar.removeAt(2); + assertThat(ar.size()).isEqualTo(2); + assertThat(ar.get(1)).isEqualTo(20); + } + + @Test + public void testRemoveAtOutOfBounds() { + IntArray ar = new IntArray(new int[] {1, 2, 3}); + assertThrows(IndexOutOfBoundsException.class, () -> ar.removeAt(-1)); + assertThrows(IndexOutOfBoundsException.class, () -> ar.removeAt(3)); + } + + @Test + public void testRemoveAtThenAdd() { + IntArray ar = new IntArray(new int[] {1, 2, 3}); + ar.removeAt(1); + ar.add(4); + assertThat(ar.size()).isEqualTo(3); + assertThat(ar.get(0)).isEqualTo(1); + assertThat(ar.get(1)).isEqualTo(3); + assertThat(ar.get(2)).isEqualTo(4); + } + + @Test + public void testRemoveElement() { + IntArray ar = new IntArray(new int[] {10, 20, 30, 20}); + assertThat(ar.remove(20)).isTrue(); + assertThat(ar.size()).isEqualTo(3); + assertThat(ar.get(0)).isEqualTo(10); + assertThat(ar.get(1)).isEqualTo(30); + assertThat(ar.get(2)).isEqualTo(20); + } + + @Test + public void testRemoveNonExistent() { + IntArray ar = new IntArray(new int[] {1, 2, 3}); + assertThat(ar.remove(99)).isFalse(); + assertThat(ar.size()).isEqualTo(3); + } + + @Test + public void testReverse() { + IntArray ar = new IntArray(new int[] {1, 2, 3, 4, 5}); + ar.reverse(); + assertThat(ar.get(0)).isEqualTo(5); + assertThat(ar.get(1)).isEqualTo(4); + assertThat(ar.get(2)).isEqualTo(3); + assertThat(ar.get(3)).isEqualTo(2); + assertThat(ar.get(4)).isEqualTo(1); + } + + @Test + public void testReverseEvenLength() { + IntArray ar = new IntArray(new int[] {1, 2, 3, 4}); + ar.reverse(); + assertThat(ar.get(0)).isEqualTo(4); + assertThat(ar.get(1)).isEqualTo(3); + assertThat(ar.get(2)).isEqualTo(2); + assertThat(ar.get(3)).isEqualTo(1); + } + + @Test + public void testReverseSingleElement() { + IntArray ar = new IntArray(new int[] {42}); + ar.reverse(); + assertThat(ar.get(0)).isEqualTo(42); + } + + @Test + public void testReverseEmpty() { + IntArray ar = new IntArray(); + ar.reverse(); // should not throw + assertThat(ar.isEmpty()).isTrue(); + } + + @Test + public void testSort() { + IntArray ar = new IntArray(new int[] {3, 1, 4, 1, 5, 9, 2}); + ar.sort(); + assertThat(ar.get(0)).isEqualTo(1); + assertThat(ar.get(1)).isEqualTo(1); + assertThat(ar.get(2)).isEqualTo(2); + assertThat(ar.get(3)).isEqualTo(3); + assertThat(ar.get(4)).isEqualTo(4); + assertThat(ar.get(5)).isEqualTo(5); + assertThat(ar.get(6)).isEqualTo(9); + } + + @Test + public void testBinarySearch() { + IntArray ar = new IntArray(new int[] {1, 3, 5, 7, 9}); + assertThat(ar.binarySearch(5)).isEqualTo(2); + assertThat(ar.binarySearch(1)).isEqualTo(0); + assertThat(ar.binarySearch(9)).isEqualTo(4); + assertThat(ar.binarySearch(4)).isLessThan(0); + } + + @Test + public void testIterator() { + IntArray ar = new IntArray(new int[] {10, 20, 30}); + List result = new ArrayList<>(); + for (int val : ar) { + result.add(val); + } + assertThat(result).containsExactly(10, 20, 30).inOrder(); + } + + @Test + public void testIteratorEmpty() { + IntArray ar = new IntArray(); + Iterator it = ar.iterator(); + assertThat(it.hasNext()).isFalse(); + } + + @Test + public void testIteratorRemoveUnsupported() { + IntArray ar = new IntArray(new int[] {1}); + Iterator it = ar.iterator(); + assertThrows(UnsupportedOperationException.class, it::remove); + } + + @Test + public void testToString() { + IntArray ar = new IntArray(); + assertThat(ar.toString()).isEqualTo("[]"); + + ar.add(1); + assertThat(ar.toString()).isEqualTo("[1]"); + + ar.add(2); + ar.add(3); + assertThat(ar.toString()).isEqualTo("[1, 2, 3]"); + } + + @Test + public void testToStringNegativeValues() { + IntArray ar = new IntArray(new int[] {-5, 0, 5}); + assertThat(ar.toString()).isEqualTo("[-5, 0, 5]"); + } + + @Test + public void testAddRemoveAddSequence() { + IntArray ar = new IntArray(2); + // Fill, empty, refill to exercise capacity management + for (int i = 0; i < 10; i++) ar.add(i); + for (int i = 0; i < 10; i++) ar.removeAt(0); + assertThat(ar.isEmpty()).isTrue(); + for (int i = 0; i < 10; i++) ar.add(i * 10); + assertThat(ar.size()).isEqualTo(10); + for (int i = 0; i < 10; i++) { + assertThat(ar.get(i)).isEqualTo(i * 10); + } + } +} diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/GenericSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/GenericSegmentTreeTest.java index a84add8a0..6d3f772a0 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/GenericSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/GenericSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.GenericSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:GenericSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTreeTest.java index c1ac5e1af..be95b75ba 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MaxQuerySumUpdateSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.MaxQuerySumUpdateSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:MaxQuerySumUpdateSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTreeTest.java index e12fd4269..04c9fb255 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQueryAssignUpdateSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.MinQueryAssignUpdateSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:MinQueryAssignUpdateSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTreeTest.java index 31b3498a9..e813bd273 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/MinQuerySumUpdateSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.MinQuerySumUpdateSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:MinQuerySumUpdateSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SegmentTreeWithPointersTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SegmentTreeWithPointersTest.java index 9d9f8374c..a2c524ce2 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SegmentTreeWithPointersTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SegmentTreeWithPointersTest.java @@ -1,5 +1,4 @@ -// gradle test --info --tests -// "com.williamfiset.algorithms.datastructures.segmenttree.SegmentTreeWithPointersTest" +// bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:SegmentTreeWithPointersTest package com.williamfiset.algorithms.datastructures.segmenttree; import static com.google.common.truth.Truth.assertThat; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTreeTest.java index 74ac738ea..e860a4257 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryAssignUpdateSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.SumQueryAssignUpdateSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:SumQueryAssignUpdateSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTreeTest.java index 432fbd98b..a202fa2b2 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQueryMultiplicationUpdateSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.SumQueryMultiplicationUpdateSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:SumQueryMultiplicationUpdateSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTreeTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTreeTest.java index f388d1750..3dc1fa1e0 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTreeTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/segmenttree/SumQuerySumUpdateSegmentTreeTest.java @@ -1,6 +1,5 @@ /** - * gradle test --info --tests - * "com.williamfiset.algorithms.datastructures.segmenttree.SumQuerySumUpdateSegmentTreeTest" + * bazel test //src/test/java/com/williamfiset/algorithms/datastructures/segmenttree:SumQuerySumUpdateSegmentTreeTest */ package com.williamfiset.algorithms.datastructures.segmenttree; diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/trie/TrieTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/trie/TrieTest.java index b44e4b00c..1839a8b5f 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/trie/TrieTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/trie/TrieTest.java @@ -3,12 +3,10 @@ import static com.google.common.truth.Truth.assertThat; import static org.junit.jupiter.api.Assertions.assertThrows; -import org.junit.jupiter.api.*; +import org.junit.jupiter.api.Test; public class TrieTest { - // @BeforeEach public void setup() { } - @Test public void testBadTrieDelete1() { assertThrows( @@ -186,33 +184,42 @@ public void testCount() { public void testInsert() { Trie t = new Trie(); + // First insert of each word returns false (word didn't exist yet) assertThat(t.insert("a")).isFalse(); assertThat(t.insert("b")).isFalse(); assertThat(t.insert("c")).isFalse(); assertThat(t.insert("d")).isFalse(); assertThat(t.insert("x")).isFalse(); + // "ab" is a new word even though prefix "a" exists + assertThat(t.insert("ab")).isFalse(); + assertThat(t.insert("xkcd")).isFalse(); + assertThat(t.insert("dogs")).isFalse(); + assertThat(t.insert("bears")).isFalse(); + + // Duplicate inserts return true (word already exists) + assertThat(t.insert("a")).isTrue(); assertThat(t.insert("ab")).isTrue(); assertThat(t.insert("xkcd")).isTrue(); - assertThat(t.insert("dogs")).isTrue(); - assertThat(t.insert("bears")).isTrue(); assertThat(t.insert("mo")).isFalse(); - assertThat(t.insert("mooooose")).isTrue(); + assertThat(t.insert("mooooose")).isFalse(); t.clear(); assertThat(t.insert("aaaa", 4)).isFalse(); assertThat(t.count("aaaa")).isEqualTo(4); - assertThat(t.insert("aaa", 3)).isTrue(); + // "aaa" is a new word even though "aaaa" passes through it + assertThat(t.insert("aaa", 3)).isFalse(); assertThat(t.count("a")).isEqualTo(7); assertThat(t.count("aa")).isEqualTo(7); assertThat(t.count("aaa")).isEqualTo(7); assertThat(t.count("aaaa")).isEqualTo(4); assertThat(t.count("aaaaa")).isEqualTo(0); - assertThat(t.insert("a", 5)).isTrue(); + // "a" was never explicitly inserted, so this is a new word + assertThat(t.insert("a", 5)).isFalse(); assertThat(t.count("a")).isEqualTo(12); assertThat(t.count("aa")).isEqualTo(7); assertThat(t.count("aaa")).isEqualTo(7); diff --git a/src/test/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFindTest.java b/src/test/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFindTest.java index bf1bfca95..7bd3a9f2f 100644 --- a/src/test/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFindTest.java +++ b/src/test/java/com/williamfiset/algorithms/datastructures/unionfind/UnionFindTest.java @@ -1,6 +1,5 @@ package com.williamfiset.algorithms.datastructures.unionfind; -// import static org.junit.Assert.*; import static com.google.common.truth.Truth.assertThat; import static org.junit.jupiter.api.Assertions.assertThrows; diff --git a/src/test/java/com/williamfiset/algorithms/graphtheory/KosarajuTest.java b/src/test/java/com/williamfiset/algorithms/graphtheory/KosarajuTest.java index 3ce6974c7..4c73b07b5 100644 --- a/src/test/java/com/williamfiset/algorithms/graphtheory/KosarajuTest.java +++ b/src/test/java/com/williamfiset/algorithms/graphtheory/KosarajuTest.java @@ -1,7 +1,7 @@ /** * Tests for Kosaraju's algorithm * - *

    gradle test --info --tests "com.williamfiset.algorithms.graphtheory.KosarajuTest" + *

    bazel test //src/test/java/com/williamfiset/algorithms/graphtheory:KosarajuTest */ package com.williamfiset.algorithms.graphtheory; diff --git a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImplTest.java b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImplTest.java index 866dc4613..2eecc00cd 100644 --- a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImplTest.java +++ b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterLongestPathImplTest.java @@ -1,7 +1,6 @@ // To run this test in isolation from root folder: // -// $ gradle test --tests -// com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterLongestPathImplTest +// $ bazel test //src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms:TreeCenterLongestPathImplTest package com.williamfiset.algorithms.graphtheory.treealgorithms; diff --git a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterTest.java b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterTest.java index 56723126a..783c3fc17 100644 --- a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterTest.java +++ b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeCenterTest.java @@ -1,7 +1,6 @@ // To run this test in isolation from root folder: // -// $ gradle test --tests -// com.williamfiset.algorithms.graphtheory.treealgorithms.TreeCenterTest +// $ bazel test //src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms:TreeCenterTest package com.williamfiset.algorithms.graphtheory.treealgorithms; diff --git a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismTest.java b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismTest.java index 40a3c1e0e..da79f3170 100644 --- a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismTest.java +++ b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismTest.java @@ -1,7 +1,6 @@ // To run this test in isolation from root folder: // -// $ gradle test --tests -// com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismTest +// $ bazel test //src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms:TreeIsomorphismTest package com.williamfiset.algorithms.graphtheory.treealgorithms; diff --git a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismWithBfsTest.java b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismWithBfsTest.java index 02453af34..bf1629816 100644 --- a/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismWithBfsTest.java +++ b/src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms/TreeIsomorphismWithBfsTest.java @@ -1,7 +1,6 @@ // To run this test in isolation from root folder: // -// $ gradle test --tests -// com.williamfiset.algorithms.graphtheory.treealgorithms.TreeIsomorphismWithBfsTest +// $ bazel test //src/test/java/com/williamfiset/algorithms/graphtheory/treealgorithms:TreeIsomorphismWithBfsTest package com.williamfiset.algorithms.graphtheory.treealgorithms; diff --git a/src/test/java/com/williamfiset/algorithms/strings/LongestCommonSubstringTest.java b/src/test/java/com/williamfiset/algorithms/strings/LongestCommonSubstringTest.java index ebee4d96a..da94b006a 100644 --- a/src/test/java/com/williamfiset/algorithms/strings/LongestCommonSubstringTest.java +++ b/src/test/java/com/williamfiset/algorithms/strings/LongestCommonSubstringTest.java @@ -1,5 +1,5 @@ /** - * Run like: $ gradle test --tests "com.williamfiset.algorithms.strings.LongestCommonSubstringTest" + * Run like: $ bazel test //src/test/java/com/williamfiset/algorithms/strings:LongestCommonSubstringTest */ package com.williamfiset.algorithms.strings;