/mountain-climber

A Java solution to Karl R. Rosenberg and Abhinav Gupta's "mountain climb" problem for NYU CSCI 102 Data Structures

Primary LanguageJavaMIT LicenseMIT

Mountain Climber Binary Search Tree

This is a solution to Karl R. Rosenberg and Abhinav Gupta's "mountain climb" problem implemented in Java for NYU CSCI 102 Data Structures. The goal of this project is to implement a program that uses a binary search tree to model a mountain hiking expedition: A hiker starts at the top of the mountain. They need to find their way down the mountain with limited resources to survive and overcome obstacles. This program produces a list of all the possible paths that the hiker should take to survive.

The mountain is represented by a binary search tree. Nodes in this tree represent a rest-stops. The hiker restocks their supplies at those rest-stops. But they may also encounter obstacles at the rest-stops. Some of the supplies that they carry with them may help them pass through the obstacles. The paths from the root down represent possible trails. Once the hiker starts a single path, they do not have an option of going back. Some of the paths lead to cliffs; others lead to the bottom of the mountain.

API Documentation

The project specification is available here.

License

This repository is licensed with the MIT license.