algo4j

Continuous Integration Status
Travis CI Build Status
CircleCI CircleCI
CodeShip CodeShip
AppVeyor Build status

JitPack Gitter Stories in Ready codecov


中文

This is an algorithm library for Java, whose core is written in C++, linked with JNI.

It is test-driven(also benchmarks), well-documented, with code generation for some special cases.

Project structure

file name usage
jni C++ codes
code_drafts something written but not used ATM
libjni.dll/libjni.so/libjni.dylib jni library
jni/cpp-test C++ tests
src/main/java source(independent)
src/main/kotlin Kotlin extension library
src/test tests

The jni library above is not included in the repo, please build it yourself, or download at:

Put it to your working directory after download or build one.

Overview

Actually, every java classes are well-documented.
For more information, see JavaDocs in each java file or package-info.java.

Languages

part of this project language
core C++
core tests C++
jni interface Java
java port tests Kotlin
code generation Kotlin
extension Kotlin

Contribution

There is a README file under jni path, it's strongly-recommended right read that.

This library is Test-driven, so there are tests for every class. If you want to contribute, please offer tests for your classes.

Rules of contribution