CS 307 Coding Samples
Various Java programs to illustrate various concepts
A Hello World! Java program.
Calling Methods. A sample of how to call methods in the same class.
For loop. A simple example of using for loops to calculate factorial. Uses the built in int data type so only good to 13!
Value Parameters: An example that shows the behavior of value parameters. In Java all parameters are passed by value.
String Example. A few brief examples of String manipulations.
BinaryConverter. A program with examples of various Java syntax that converts a base 10 int to base 2 String.
2D array Example. A simplified version of filtering a picture represented by ints.
2D array example. Very simple version of the Conway's Game of Life.
IntListVer1 First version of the IntList class developed in class. Developing class to illustrate various class design and implementation issues in Java.
IntListVer2 Added default add method, equals method, and toString methods. Includes versions of toString using String concatenation and StringBuffer to illustarte performance differences.
IntListVer3. Added insert and remove methods.
SortedIntList. Inherits from InListVer3 to create a SortedIntList. Class is "broken" because random insertions still allowed.
GenericList. Altered the list to store anything, not just ints.
Die class. A class that models a playing die.
DemoClass: This illustrates some of the more confusing concepts in class syntax and mechanics such as constructors, static vs. instance methods, and method overloading.
Stopwatch class. A class for measuring how long it takes for a program to run.
Create a Set. A method that using polymorphism to create a set from an array.
Recursion examples. Includes examples on finding space taken up by files in a directory including all files in all subdirectories, recursive factorial, recursive power, recursive Fibonacci numbers, and a simple knapsack problem.
Eight Queens example. Code to find a a solution to an N queens problem. Note the queensAreSafe method has not been completed.
Airlines example. Determine if airlines can be moved from airline to another based on network of airline partners. Here is a sample input file.
Minesweeper. Another example of recursion from the game minesweeper.
GenericListVersion2. Changed the GenericList class so that it implements the Iterable interface in order to demonstrate how to implement an iterator using an inner class.
GenericListVersion3. Changed GenericList so it is generic based on Java generics syntax instead of relying on Object.
ListNode. A singly linked node class used to build linked lists
IList. A simple list interface
LinkedList. Similar to the LinkedList developed in class. Does not contain all the methods you would expect of a LinkedList. Also implements the iterator remove method in O(N) time. An O(1) time remove method is possible.