Skip to content

Short project for training Java and TDD skills on 99-problems. Read-only, original lives on https://gitlab.com/99-problems/99-problems

License

Notifications You must be signed in to change notification settings

Mishco/99-problems-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

99 Problems in Java (16)

Overview

Build status

Build Status

Quality gate status

Quality Gate Status

Coverage

Coverage

This is an adaptation of the Ninety-Nine Prolog Problems written by Werner Hett at the Berne University of Applied Sciences in Berne, Switzerland.

From the original source:

The purpose of this problem collection is to give you the opportunity to
practice your skills in logic programming.
Your goal should be to find the most elegant solution of the given problems.
Efficiency is important, but logical clarity is even more crucial.
Some of the (easy) problems can be trivially solved using built-in predicates.
However, in these cases, you learn more if you try to find your own solution.
The problems have different levels of difficulty.
Those marked with a single asterisk (*) are easy.
If you have successfully solved the preceding problems you should be able
to solve them within a few (say 15) minutes.
Problems marked with two asterisks (**) are of intermediate difficulty.
If you are a skilled Java programmer it shouldn't take you more
than 30-90 minutes to solve them.
Problems marked with three asterisks (***) are more difficult.
You may need more time (i.e. a few hours or more) to find a good solution.

The main purpose for this repository is to train Java skills and also deepen TDD skills Test Driven Development.

Technology

Problems

My Numbering (ascending from 01) / numbering from Berne University

Lists

Binary Tree

P53 - Collect the leaves of a binary tree in a list

P54 - Collect the internal nodes of a binary tree in a list

P55 - Collect the nodes at a given level in a list

P56 - Construct a complete binary tree

P57 - Layout a binary tree (1)

P58 - Layout a binary tree (2)

P59 - Layout a binary tree (3)

P60 - A string representation of binary trees

P61 - Preorder and inorder sequences of binary trees

P62 - Dotstring representation of binary trees

Multiway Trees

P63 - Check whether a given term represents a multiway tree

P64 - Count the nodes of a multiway tree

P65 - Tree construction from a node string

P66 - Determine the internal path length of a tree

P67 - Construct the bottom-up order sequence of the tree nodes

P68 - Lisp-like tree representation

Graphs

P69 - Conversions

P70 - Path from one node to another one

P71 - Cycle from a given node

P72 - Construct all spanning trees

P73 - Construct the minimal spanning tree

P74 - Graph isomorphism

P75 - Node degree and graph coloration

P76 - Depth-first order graph traversal

P77 - Connected components

P78 - Bipartite graphs

P79 - Generate K-regular simple graphs with N nodes

Miscellaneous

P81 - Knight’s tour

P82 - Von Koch’s conjecture

P83 - An arithmetic puzzle

P84 - English number words

P85 - Syntax checker

P86 - Sudoku

P87 - Nonograms

P88 - Crossword puzzle (the last P99 in some sources)

About

Short project for training Java and TDD skills on 99-problems. Read-only, original lives on https://gitlab.com/99-problems/99-problems

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages