Skip to content

Instantly share code, notes, and snippets.

View alexeygrigorev's full-sized avatar
:octocat:
Githubbing

Alexey Grigorev alexeygrigorev

:octocat:
Githubbing
View GitHub Profile
@alexeygrigorev
alexeygrigorev / Heap.java
Created July 31, 2013 09:29
Implementation of a heap
import java.util.*;
/**
* Implementation is based on http://algorithms.soc.srcf.net/notes/dijkstra_with_heaps.pdf
*
* @author Grigorev Alexey
*/
public class Heap<E, K> {
private final List<HeapNode<E, K>> heap = new ArrayList<HeapNode<E, K>>();
@alexeygrigorev
alexeygrigorev / RuleDSL.g4
Last active December 7, 2023 03:39
ANTLR4 grammar for rule-based DSL
grammar RuleDSL;
rules: (basic_rule)+ EOF;
basic_rule: 'rule' SPACE rule_name SPACE '{' EOL conditions '}' EOL;
name: ID;
list_index: '[' IND ']';
name_expr: name list_index*;
rule_name: name_expr ('.' name_expr)*;
@alexeygrigorev
alexeygrigorev / CassandraService.java
Last active December 16, 2015 01:19
Cassandra TTL test
import me.prettyprint.cassandra.serializers.ObjectSerializer;
import me.prettyprint.cassandra.service.ThriftCfDef;
import me.prettyprint.hector.api.*;
import me.prettyprint.hector.api.beans.HColumn;
import me.prettyprint.hector.api.ddl.*;
import me.prettyprint.hector.api.factory.HFactory;
import me.prettyprint.hector.api.mutation.Mutator;
import me.prettyprint.hector.api.query.QueryResult;
import org.slf4j.*;
@alexeygrigorev
alexeygrigorev / gist:5334784
Last active December 15, 2015 22:39
8 Queens, Scheme (SICP)
(define (accumulate op initial sequence)
(if (null? sequence)
initial
(op (car sequence)
(accumulate op initial (cdr sequence)))
)
)
(define (enumerate-interval begin end)
(if (> begin end)