Graphs.jl
An optimized graphs package for the Julia programming language (by JuliaGraphs)
advent-of-code
For sharing my adventofcode.com solutions (by kbielefe)
Graphs.jl | advent-of-code | |
---|---|---|
4 | 13 | |
436 | 13 | |
1.1% | - | |
8.0 | 0.0 | |
7 days ago | 4 months ago | |
Julia | Scala | |
GNU General Public License v3.0 or later | - |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Graphs.jl
Posts with mentions or reviews of Graphs.jl.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-12-23.
-
-🎄- 2022 Day 24 Solutions -🎄-
Next I tried a parallel BFS, but hit two issues: early stopping threads is hard, and the overhead of threads seems significant compared to the tiny amount of work each thread can do before either synchronising or ending. So that wasn't going to get me the gains I needed, and besides, the exploration had revealed a much more lucrative approach - frontiers! By only considering the search frontier, I could easily make sure each node was unique, which made a huuuuuuge difference to run time.
-
-🎄- 2022 Day 12 Solutions -🎄-
Getting started with Graph libraries is always a great way to get a feel for the approachability of a language ecosystem. Got thrown in a web dead-end by some links to old libraries, but once I found Graphs.jl it was pretty smooth sailing. The precious examples were sufficient if not bountiful, but I appreciate examples are hard for such generic libraries.
-
How do I graph this on julia?
There is the rebooted version https://github.com/JuliaGraphs/Graphs.jl.
-
Advent of Code 2021, in Julia?
It seems LightGraphs is now being continued as Graphs, which is different from the original Graphs package that LightGraphs was made to be an alternative of? Not sure what that's about tbh.
advent-of-code
Posts with mentions or reviews of advent-of-code.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-12-05.
-
[2023 Day 5 Part 2] Haskell libraries really shine here
I didn't realize Haskell had that. I wrote a similar Scala library for 2022 Day 15 that's basically the encapsulated equivalent of a [Range a], but I really like the API of Haskell's library. Especially Haskell always handles infinite sequences well.
-
-❄️- 2023 Day 5 Solutions -❄️-
[LANGUAGE: Scala] GitHub
-
[2022 All Days]
Here's mine. Most of it I wrote in prior years, but refined this year. To account for problem-specific details, the functions are very generic and higher-order. It has a handful of well-known algorithms like A* and Floyd-Warshall, some handy data structures like circular buffers and intervals, and some type classes that are useful for parsing puzzle input.
-
-🎄- 2022 Day 18 Solutions -🎄-
Scala 30ms + 70ms
-
-🎄- 2022 Day 15 Solutions -🎄-
Scala 6.5 seconds.
-
-🎄- 2022 Day 13 Solutions -🎄-
Scala
-
-🎄- 2022 Day 12 Solutions -🎄-
I wrote an immutable A* in Scala a few years ago. It's not too bad if you have immutable hash maps and an immutable priority queue. Comes in handy for a lot of puzzles.
-
[2022 day 4] My experience in a nutshell
Last year I made myself an input parsing library that was really nice for this problem. I just create a Pair class with 4 number members, then ask for a List[Pair] and it knows what to do. My solution.
-
Best immutable priority queue for scala
I implemented my own using a pairing heap. It sped up my immutable A* considerably, but I was just using minBy on a List before that. Inserts are amortized O(1) and delete-mins are O(log n).
-
What is the best way to read a text file of your input in your language of choice?
This year I'm creating a Scala library to make it easier. I specify a type like List[Int] and it summons the correct type classes to parse it into that format for me.
What are some alternatives?
When comparing Graphs.jl and advent-of-code you can also consider the following projects:
LightGraphs.jl - An optimized graphs package for the Julia programming language
advent-of-code-data - Download Advent of Code input data with ease.
JGraphT - Master repository for the JGraphT project
advent-of-code-scala - Solving advent of code challenges
Gadfly.jl - Crafty statistical graphics for Julia.
aoc - 🎄 My solutions and walkthroughs for Advent of Code and more related stuff.
ArraysOfArrays.jl - Efficient storage and handling of nested arrays in Julia
advent-of-code
aoc
advent-of-code-2020
AdventOfCode - Solutions to Advent of Code 2021 - 2023
adventofcode2022
Graphs.jl vs LightGraphs.jl
advent-of-code vs advent-of-code-data
Graphs.jl vs JGraphT
advent-of-code vs advent-of-code-scala
Graphs.jl vs Gadfly.jl
advent-of-code vs aoc
Graphs.jl vs ArraysOfArrays.jl
advent-of-code vs advent-of-code
Graphs.jl vs aoc
advent-of-code vs advent-of-code-2020
Graphs.jl vs AdventOfCode
advent-of-code vs adventofcode2022