Skip to content

Instantly share code, notes, and snippets.

@suyash
suyash / kmp.rs
Created July 8, 2020 13:26
Knuth-Morris-Pratt implementation
//! Knuth-Morris-Pratt implementation
//!
//! See Chapter 17 in Blandy + Orendorff
/// computes the KMP longest prefix-suffix function
pub fn kmp<T: AsRef<[u8]>>(pattern: T) -> Vec<usize> {
let pattern = pattern.as_ref();
let n = pattern.len();
let mut ans = vec![0; n + 1];
@suyash
suyash / segment_tree.rs
Created July 8, 2020 07:49
Generic Segment Tree implemented for custom comparator and min functions.
//! Generic Segment Tree implemented for custom comparator and min functions.
//!
//! See Chapters 15, 16 in Blandy and Orendorff
/// Segment Tree allows for querying information over ranges in a continuous data stream.
pub struct SegmentTree<T, Comparator, Minimum> {
tree: Vec<T>,
n: usize,
f: Comparator,
d: Minimum,
@suyash
suyash / mixture_density_nets_2d.ipynb
Last active October 6, 2019 04:56
Mixture Density Nets 2D
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@suyash
suyash / canny_edge_detector.ipynb
Created September 27, 2019 05:50
Canny Edge Detector
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@suyash
suyash / mixture_density_networks.ipynb
Created September 25, 2019 12:27
Mixture Density Networks
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@suyash
suyash / Cargo.toml
Last active December 27, 2022 14:51
@karpathy's min-char-rnn.py in rust
[package]
name = "min-char-rnn-rs"
version = "0.1.0"
authors = ["Suyash <suyash93@protonmail.com>"]
edition = "2018"
[dependencies]
rulinalg = "0.4.2"
rand = "0.6.4"
indicatif = "0.11.0"

Keybase proof

I hereby claim:

  • I am suyash on github.
  • I am suyash93 (https://keybase.io/suyash93) on keybase.
  • I have a public key ASB0FMVL09PSCDnomjVVQCJzpz-5L9fDYgQi3l49j4NthQo

To claim this, I am signing this object:

@suyash
suyash / lib.rs
Created December 6, 2017 07:48
Bowling
#[derive(Debug)]
enum State {
STRIKE,
STRIKE_PLUS_1,
STRIKE_PLUS_2,
SPARE,
SECOND,
FIRST
}