FGM-148/algs4


Algorithms, 4th edition textbook libraries http://algs4.cs.princeton.edu/code/

Download


Step 1. Add the JitPack repository to your build file

Add it in your root settings.gradle at the end of repositories:

	dependencyResolutionManagement {
		repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
		repositories {
			mavenCentral()
			maven { url 'https://jitpack.io' }
		}
	}

Add it in your settings.gradle.kts at the end of repositories:

	dependencyResolutionManagement {
		repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
		repositories {
			mavenCentral()
			maven { url = uri("https://jitpack.io") }
		}
	}

Add to pom.xml

	<repositories>
		<repository>
		    <id>jitpack.io</id>
		    <url>https://jitpack.io</url>
		</repository>
	</repositories>

Add it in your build.sbt at the end of resolvers:

 
    resolvers += "jitpack" at "https://jitpack.io"
        
    

Add it in your project.clj at the end of repositories:

 
    :repositories [["jitpack" "https://jitpack.io"]]
        
    

Step 2. Add the dependency

	dependencies {
		implementation 'com.github.FGM-148:algs4:1.0.0.0'
	}
	dependencies {
		implementation("com.github.FGM-148:algs4:1.0.0.0")
	}
	<dependency>
	    <groupId>com.github.FGM-148</groupId>
	    <artifactId>algs4</artifactId>
	    <version>1.0.0.0</version>
	</dependency>

                            
    libraryDependencies += "com.github.FGM-148" % "algs4" % "1.0.0.0"
        
        

                            
    :dependencies [[com.github.FGM-148/algs4 "1.0.0.0"]]
        
        

Readme


Overview

<IMG SRC="http://algs4.cs.princeton.edu/cover.png" align=right hspace=25 width=100 alt = "Algorithms 4/e textbook"> This <a href = "https://github.com/kevin-wayne/algs4">public repository</a> contains the Java <a href = "http://algs4.cs.princeton.edu/code/">source code</a> for the algorithms in the textbook <a href = "http://amzn.to/13VNJi7">Algorithms, 4th Edition</a> by Robert Sedgewick and Kevin Wayne. This is the official version&mdash;it is actively maintained and updated by the authors. The programs are organized in the package <code>edu.princeton.cs.algs4</code>. If you need only the class files (and not the source code), you can use <a href = "http://algs4.cs.princeton.edu/code/algs4.jar">algs4.jar</a> instead. <br>

Design goals

Our original goal was to cover the <em>50 algorithms that every programmer should know</em>. We use the word <em>programmer</em> to refer to anyone engaged in trying to accomplish something with the help of a computer, including scientists, engineers, and applications developers, not to mention college students in science, engineering, and computer science. The code is optimized for clarity, portability, and efficiency. While some of our implementations are as fast as (or faster than) their counterparts in <tt>java.util</tt>, our main goal is to express the core algorithmic ideas in an elegant and simple manner. While we embrace some advanced Java features (such as generics and iterators), we avoid those that interfere with the exposition (such as inheritance and concurrency).

Build managers

This repository is intended for use with either the <a href = "https://maven.apache.org">Maven</a> or <a href = "https://gradle.org">Gradle</a> build managers. It can be run from either the command line or integrated into Eclipse, NetBeans, and IntelliJ.

Coursera Algorithms, Part I and II students

Feel free to use this public repository to develop solutions to the programming assignments. However, please do not store solutions to programming assignments in public repositories.

Copyright

Copyright © 2000–2015 by Robert Sedgewick and Kevin Wayne.

License

This code is released under GPLv3.

Contribute to this repository

This <a href = "http://algs4.cs.princeton.edu/code/wishlist.txt">wishlist.txt</a> contains a list of algorithms and data structures that we would like to add to the repository. Indeed, several of the algorithms and data structures in this repository were contributed by others. If interested, please follow the same style as the code in the repository and thoroughly test your code before contacting us.

Support for other programming languaages

Some of the code in this repository has been translated to other languages:

<ul> <a href = "https://github.com/garyaiki/Scala-Algorithms">Scala</a> </ul>

Credits

Thanks to Peter Korgan for Maven and Gradle support.