

-
It doesn't, but you can use a separate list, wrapper classes, and deque.index to find where the values live. I may be biased but I think that my solution (ultimately using deque) isn't as complex as a custom linked list.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
Python, 17/28, GitHub source
-
Python, 3/147, GitHub
-
adventofcode2022
Discontinued [Moved to: https://github.com/benthemonkey/adventofcode] (by benthemonkey)
Typescript 132 / 126 GitHub source
-
Kotlin, 120/70, GitHub source
-
Nutrient
Nutrient - The #1 PDF SDK Library. Bad PDFs = bad UX. Slow load times, broken annotations, clunky UX frustrates users. Nutrientβs PDF SDKs gives seamless document experiences, fast rendering, annotations, real-time collaboration, 100+ features. Used by 10K+ devs, serving ~half a billion users worldwide. Explore the SDK for free.
-
Python [213/499]
-
Code, Video
-
Typescript (82/55) Code
-
Who says you can't do mutation in Clojure? Honestly, I prefer to avoid mutation, but I was convinced a doubly-linked circular list implementation would be necessary performance-wise in preparation for part 2. I was surprised to see from people's comments here that simpler manipulations were sufficient. https://github.com/Engelberg/aoc22/blob/main/clojure/aoc22/src/aoc22/day20/core.clj
-
-
Python
-
-
Go
-
C# 1ms / 15 ms
-
-
Java - github
-
-
-
Code (or GitHub)
-
Low effort lazy tail-recursive perl: https://github.com/ramuuns/aoc/blob/master/2022/Day20.pm
-
-
Part 2 94ms
-
adventofcode
My solutions for https://adventofcode.com/ programming mini puzzles - written mostly as sjasmplus script (to exercise the tool and collect ideas for future development of the script language, not because it's a best choice for the task, quite opposite) (by ped7g)
-
-
-
-
C3 solution I didn't use any linked list, just two lists.
-
-
Github
-
I implemented a treap from scratch https://github.com/orlp/aoc2022/blob/master/src/treap.rs which allows the following operations all in O(log n):
-
also did it in Scala. glad i stopped myself from implementing every collection method for fun
-
Javascript / NodeJS Diff for Day20 here including a little noise
-
-
Well. I suck at doubly-linked lists so I shift one position at a time. This is quite a number of CPU cycles, but it's going to be quite a number of cycles anyway so let's leave it at that and spend the evening doing something else!
-
Argh, a naΓ―ve solutions takes about 60ms on my laptop : https://github.com/remi-dupre/algorithmics/blob/master/advent-of-code/2022/src/day20.rs
-
-
-
-
Python github.
-
-
https://github.com/aaronblohowiak/advent-of-code-2022/blob/main/twenty/src/main.rs\
-
-
-
-
-
TypeScript - Optimized, all parts run under 3 seconds. F# - Could not avoid mutations for array, and part 2 requires too many int64 -> int32 conversions.
-
-
I used lists of tuples to keep the indices paired with their values. Finishes in about 1.5s and ~15 lines of code. https://github.com/dkarneman/AdventOfCode/blob/main/2022/Day20part2.py
-
Bonus solution in Go (golang) because I was confused about why my Elixir solution didn't work and decided to implement from scratch in case I'd done something dumb. The Go one also got the wrong answer, but took less than 100ms instead of a minute, so I could try out lots of tweaks that didn't change the answer.
-
-
Advent_of_Code
A repo revolving around attempting to solve the Advent of Code puzzles with single-statement t-sql (by adimcohen)
-
C#
-
Julia using linked list
-
Python solution part 1 and 2
-
advent-of-code-go
All 10 years of adventofcode.com solutions in Go/Golang (and a little Python); 2015-2024
-
-
php - It was pretty easy using a collections library. Just a matter of 2 splices. Part2 in 2.5s.
-
adventOfCode
Advent of code solutions, probably mostly in C++, but maybe in Rust in the (near) future. (by osalbahr)
Note: The last bug that got me for part 2, for some reason, was the special case of when the node to be mixed was already in the beginning, and n<0. The same method seems to produce the correct result for part 1, but when comparing the step-by-step output to 2.OUT (split in 2.OUT.1 and 2.OUT.2 because GitHub) I get a big diff. But since the final result is still correct, I will backlog it, for now.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives