Skip to content

Instantly share code, notes, and snippets.

View coderodde's full-sized avatar

Rodion Efremov coderodde

View GitHub Profile
@coderodde
coderodde / ConnectFourSearchEngineComparison.java
Created June 9, 2024 09:14
A small Java program for comparing two connect four game AI algorithms.
package com.github.coderodde.game.connect4.benchmark;
import com.github.coderodde.game.connect4.ConnectFourBoard;
import com.github.coderodde.game.connect4.ConnectFourHeuristicFunction;
import com.github.coderodde.game.zerosum.impl.AlphaBetaPruningSearchEngine;
import com.github.coderodde.game.zerosum.impl.ConnectFourAlphaBetaPruningSearchEngine;
public class ConnectFourSearchEngineComparison {
private static final int DEPTH = 9;
package fi.helsinki.cs.rodionef.msc;
import com.github.coderodde.util.IndexedLinkedList;
import java.util.Map;
import java.util.TreeMap;
import java.util.concurrent.ConcurrentSkipListMap;
public class IndexListVsSkipListComparison {
private static long durationTm = 0L;
package fi.helsinki.cs.rodionef;
import com.github.coderodde.util.SkipListMap;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import java.util.TreeMap;
import java.util.concurrent.ConcurrentSkipListMap;
@coderodde
coderodde / NiuvaPäiväkirja.txt
Last active July 10, 2024 04:31
Tarinoitani Niuvannimen sairaalasta
2024-5-13 (ma):
1. 17 päivää sitten luvattu käynti kaupungilla kariutui tunti/pari ennen sovittua lähtöä. Syy: saatava hoitaja oli sairastunut. Henkilökunta voivotteli ja pesi kätensä: sijaista ei löytynyt edes nk. poolista.
2024-5-15 (ke):
1. Hoitaja Ari kutsui tarkoituksella minua nimellä, joka ei ole minun.
2024-5-19 (su):
1. Kysyin hoitajaa Timoa antamaan minulle puhelimeni ja kannettavani latauskaapista, johon hän vastasi, että "kestää hetken". Hänyellä oli siviilipuhelin kädessään, ja hän kirjoitti noin 4 minuuttia sillä ennen kuin suostui avaamaan latauskaapin.
2024, kesäkuun loppu:
@coderodde
coderodde / SnailMatrixGenerator.py
Last active April 22, 2024 03:59
A class for generating snail matrices.
type Matrix = list[list[int]]
"""
This class is responsible for generating snail matrices of dimensions n * n.
"""
class SnailMatrixGenerator:
"""
Constructs this generator.
"""
@coderodde
coderodde / CoderoddeBinaryHeap.cs
Last active April 18, 2024 07:58
An efficient binary heap for C#.
namespace CR.PriorityQueues
{
class CoderoddeBinaryHeap<TElement, TPriority> : PriorityQueue<TElement, TPriority>
where TElement : notnull
where TPriority : notnull
{
private static readonly int INITIAL_CAPACITY = 16;
private class HeapNode<Element, Priority> where Element : notnull where Priority : notnull
{
@coderodde
coderodde / DemoRepl.java
Last active April 29, 2024 13:55
My MSc thesis research program.
import java.util.Scanner;
public class DemoRepl {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
DynamicTableStack array = new DynamicTableStack(3, 3);
while (true) {
try {
@coderodde
coderodde / colorful_subgraph.py
Created April 3, 2024 19:54
Colorful subgraph problem.
from itertools import combinations
import time
def millis():
return round(1000 * time.time())
def powerset(iterable):
s = list(iterable)
int, double (ret_int, ret_double) my_foo(a, b, c):
if specified a:
print "a"
if specified b:
print "b"
if specified c:
print "c"
if is_requested ret_int:
print "int on return requested"
if is_requested ret_double:
@coderodde
coderodde / .bashrc
Last active February 1, 2024 09:00
Directory switcher for *nix.
# ...
alias ds='source ds.sh'
# ...