Skip to content

Commit

Permalink
Update instructions for parallel-letter-frequency (#2713) (#2752)
Browse files Browse the repository at this point in the history
* Update instructions for parallel-letter-frequency (#2713)

The exercise docs suggested that the submitted code is automatically
tested for the usage of parallelism. This is not the case, so the
paragraph rewritten to instead suggest students to check for parallelism
themselves.

To help, a few links to resources about concurrency and parallelism in
Java are added.

* Split up docs for parallel-letter-frequency (#2713)

The fact that the tests are currently not checking for parallelism is no
longer mentioned in the instructions.

Resources about concurrency are moved to `hints.md`.

* Apply suggestion to parallel-letter-frequency hints

Co-authored-by: Sander Ploegsma <[email protected]>

---------

Co-authored-by: Sander Ploegsma <[email protected]>
  • Loading branch information
yogan and sanderploegsma authored Mar 21, 2024
1 parent f6b855e commit 758c9a2
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 4 deletions.
7 changes: 7 additions & 0 deletions exercises/practice/parallel-letter-frequency/.docs/hints.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Hints

The following resources may help you solve this exercise:

- [Concurrency (Oracle Java Tutorials)](https://docs.oracle.com/javase/tutorial/essential/concurrency)
- [Java Concurrency (Baeldung)](https://www.baeldung.com/java-concurrency)
- [Java 8 Parallel Streams (Baeldung)](https://www.baeldung.com/java-8-streams#parallel-streams)
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
# Instructions append

Single-threaded (non-concurrent) solutions can pass all tests [but the last.](https://www.youtube.com/watch?v=mJZZNHekEQw) Your solution will be tested for concurrency by submitting it as a [Runnable](https://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html) to an [ExecutorService.](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html) Your solution must leverage multiple [Threads](https://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html) to pass the final test.

Java documentation on [parallel streams](https://docs.oracle.com/javase/tutorial/collections/streams/parallelism.html) may provide some help.

As a stretch goal, consider if your implementation will work for characters with [diacritics or accents](https://en.wikipedia.org/wiki/Diacritic). For example, such solutions should not consider e and ë the same character. An example text for this case is [Wilhelmus](https://en.wikipedia.org/wiki/Wilhelmus), the Dutch national anthem.

0 comments on commit 758c9a2

Please sign in to comment.