Algorithms and Data Structures Challenges in Java
Challenge | Solution | Test |
---|---|---|
Implement Singly Linked Lists data structure | SinglyLinkedList.java | SinglyLinkedListTest |
Implement Circular Linked Lists data structure | CircularLinkedList.java | CircularLinkedListTest |
Implement Doubly Linked Lists data structure | DoublyLinkedList.java | DoublyLinkedListTest |
Give an algorithm for finding the second-to-last node in a singly linked list in which the last node is indicated by a null next reference. | SinglyLinkedList.java #findSecondToLastNode() |
SinglyLinkedListTest #testFindSecondToLastNode() |
Implement a stack using Linked list | Stack.java | StackTest |
evaluates fully parenthesized arithmetic expressions (for ex: (1 + ( ( 2 + 3 ) * ( 4 * 5 ) ) ) ) using Dijkstra's 2-stack algorithm |
Evaluate.java | EvaluateTest |
Q 1.3.4: Write a stack client Parentheses that reads in a text stream from standard input and uses a stack to determine whether its parentheses are properly balanced. For example, your program should print true for [()]{}{[()()]()} and false for [(]) . |
Parentheses.java | ParenthesesTest.java |
Challenge | Solution |
---|---|
Implement selection sort | |
Implement insertion sort │ |