Skip to content

youngjeffrey/unc-projects

Repository files navigation

unc-projects

Paint Tool

The Paint Tool was a project I worked on throughout the fall semester for my COMP 401 (Foundations of Programming) class. It is an image editing tool that allows for the user to edit images by inputting an image address URL. The different tools include the paint brush, the blur brush, eraser, and undo buttons. The instructor set up the JFrame and the Pixel Inspector tool for us. The program incorporates observables and observers, decorator, JFrame, polymorphism, encapsulation, and inheritance. To run the program, run the ImageEditor.java.

Quick Edit Tool

The Quick Edit Tool was a similar project to Paint Tool. It is an image editing tool that allows the user to edit images by adjusting the saturation, blur, and darkness slider. It also allows for the picture to be divided into tiles and shifted around. The program incorporates observables and observers, JFrame, and mouse listener. To see all the features of the program, run FramePuzzle.java, ImageAdjuster.java, and PixelInspector.java.

Artificial Intelligence Website

This is a website about Artificial intelligence in healthcare. It is for the final project for my Comp 380 (Computers and Society) class. It incorporates HTML and CSS as the front end. I incorporated a quiz in the website and that includes basic PHP as the backend. All the CSS files are in CSS folders and all the HTML and PHP files are in the Templates folder.

Linked List

The Linked List was my own written implementation of the doubly linked list. It allows for nodes to be easily added and removed from the list with the usage of the Node class to access the next and previous nodes. I wrote the LinkedListImpl, everything else was default code written by the instructor. To run the program, run LinkedListPlayground and tinker with it as you wish.

Binary Search Tree

The Binary Search Tree was a version of the Binary Search Tree that I wrote. It allows for the insertion and removal of nodes as well as methods to find the maximum and minimum value and the height of the tree. Usually the node would have an integer value but in this version each node has a string value so String Compare was frequently used to compare which string is bigger or smaller. I wrote the BST_Node and BST classes, the rest was default code written by the instructor.

Minimum Binary Heap

The Minimum Binary Heap was an implementation of the priority queue where the object with the lowest numerical value was at the top of the priority. It allows for insertions of new objects and constantly sorts so that the parent will always have a lower value than the childs'. The objects are also stored in an array and swapping takes place when the order is incorrect. I wrote the MinBinHeap class while the rest was default code provided by the instructor.

About

Projects done for computer science courses at UNC Chapel Hill

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published