|
1 | 1 | # Instructions |
2 | 2 |
|
3 | | -Write a simple linked list implementation that uses Elements and a List. |
| 3 | +Write a prototype of the music player application. |
4 | 4 |
|
5 | | -The linked list is a fundamental data structure in computer science, often used in the implementation of other data structures. |
6 | | -They're pervasive in functional programming languages, such as Clojure, Erlang, or Haskell, but far less common in imperative languages such as Ruby or Python. |
| 5 | +For the prototype, each song will simply be represented by a number. |
| 6 | +Given a range of numbers (the song IDs), create a singly linked list. |
| 7 | + |
| 8 | +Given a singly linked list, you should be able to reverse the list to play the songs in the opposite order. |
7 | 9 |
|
8 | | -The simplest kind of linked list is a singly linked list. |
9 | | -Each element in the list contains data and a "next" field pointing to the next element in the list of elements. |
| 10 | +~~~~exercism/note |
| 11 | +The linked list is a fundamental data structure in computer science, often used in the implementation of other data structures. |
10 | 12 |
|
11 | | -This variant of linked lists is often used to represent sequences or push-down stacks (also called a LIFO stack; Last In, First Out). |
| 13 | +The simplest kind of linked list is a **singly** linked list. |
| 14 | +That means that each element (or "node") contains data, along with something that points to the next node in the list. |
12 | 15 |
|
13 | | -As a first take, lets create a singly linked list to contain integers, and provide functions to reverse a linked list. |
| 16 | +If you want to dig deeper into linked lists, check out [this article][intro-linked-list] that explains it using nice drawings. |
14 | 17 |
|
15 | | -When implementing this in a language with built-in linked lists, implement your own abstract data type. |
| 18 | +[intro-linked-list]: https://medium.com/basecs/whats-a-linked-list-anyway-part-1-d8b7e6508b9d |
| 19 | +~~~~ |
0 commit comments