Bunnie.net Java Packages: Net.Bunnie.UVA.CS101E

Class Name Class Description
Assignment 0
Lab: HelloWorld, UseThree
HW: StdGaussian, Ordered
These classes were written on August 29th, 2007.
HelloWorld - Prints out Hello, World... Technically I wrote this after the 'UseThree' class, lol.
UseThree - Input 3 names, and print them out in reverse order.

StdGaussian - print out a random Gaussian value.
Ordered - Enter three numbers; if they are in order (increasing or decreasing) print true; otherwise print false.
Assignment 1
Lab: RGBtoCMYK
HW: Distinct, Average,
       Checkerboard, Ordinals
These classes were written on September 4th, 2007.
RGBtoCMYK - Convert input RGB to CMYK

Distinct - check to what extent 3 entered ints are distinct
Average - input int n; generate the average of n Math.random()s
Checkerboard - input int n; generate an nxn checkerboard
Ordinals - input int n; print out the first n ordinals
Assignment 2
Lab: (Triangle), Loops
HW: NBody
These classes were written September 12th-15th, 2007.
(Triangle) - This should not even count, I did not have to write any of it or edit any of it... -.-;;
Loops - Some kind of mod-ing of consecutive integers...

NBody - Input a text file containing some planets' initial positions and velocities and output a graphical NBody simulator using some kind of leapfrog scheme... I have a few versions of this being implemented but this is the one I turned in.
Assignment 3
Lab: FunctionalAbstraction,
       SimpleRecursion
HW: Sierpinski, Art
These classes were written September 19th-23th, 2007.
FunctionalAbstraction - Practice with functions/static methods, particularly the function y = ax + b
SimpleRecursion - Lists of numbers and sums recursively

Sierpinski - Sierpinski triangles recursive generator
Art - We were told to make our own recursive fractal program, and that we were to be graded on our creativity. I was originally basing my program off of this 3D fractal but I could not find a good way to draw in 3D in Java. I did manage to find the built in (yes!) alpha support (aka transparency). So it ended up being a recursive translucent donut drawer (and my background fading is generated recursively too just for the heck of it). Screenshots of n = 3, 4, and 7.
Assignment 4
Lab: Fib
HW: EditDistance
This homework class was written October 2nd-5th, 2007. The lab class was written October 11th, 2007.
Fib - recursive versus 'dynamic programming' for fibonacci numbers

EditDistance - Input a file with two DNA sequences, output their optimal alignment.
Assignment 5
Lab: Complex*
HW: Tour, Point

Lab 6: Test
Lab 7: Did not do...

HW 4.5: Mandelbrot
These classes were written October 17th-22nd, 2007; October 24th, 2007; and October 26th, 2007.
Complex* - three versions of the lab that manipulate complex numbers: an exposed one, where the client knows a complex number is merely an array of doubles; an abstract version; and an object oriented version.

Point - The abstract point data type that will find vairous distances between points, etc.
Tour - input a file containing points, contains methods to generate solutions to the traveling salesman problem using the smallest insertion and nearest insertion heuristics using circular linked lists (see also: Extra Credit tour algorithm which performs better than nearest but worse than smallest insertion).

Test - uses the Car class to create a circular linked list of cars in a train and traverse them.

Mandelbrot - uses the ComplexOOP class, along with the picture class, to draw the Mandelbrot set (sample output).
Assignment 6
Lab (9): BST
HW: RandomQueue,
       
MarkovChain,
       TextGenerator

These classes were written November 14th and November 30th, 2007.
BST - recursive BST implementation

RandomQueue - Queue implementation with random sample method
MarkovChain - One-directional graph
TextGenerator - Input a text file, the level of Markov Chain you want (we just used 7 which worked well) and the number of characters you want outputted, and output is a randomly generated text excerpt following the style of the input file.
Spring 2008 related Classes
RingBuffer, GuitarString,
    GuitarHero
Plays notes based on input strings. "e y p g j p y j k p y k s i e s p y e y p y e q e e" plays Stairway to Heaven.
Precision Regular expression function identical to Double.parseDouble()
SHR Various functions such as prime power factorization (then used to make a very efficient totient function), short palindrome checker with regular expressions, etc.
Fall 2008 related Classes
GuitarHero This version automatically plays Stairway to Heaven upon load and also allows users to press keys to play notes as well.
PhotoProgram,
    Picture (from Picture2)
Photo display program that supports various commands like flip, red eye removal, mosaic, etc.
External Classes
In; StdAudio, StdDraw,
StdIn, StdOut
These classes are courtesy of the Princeton CS site/book that this year's (UVA) CS 101 is based off of.

Java