Skip to content

Instantly share code, notes, and snippets.

Lee Zhen Yong bruceoutdoors

View GitHub Profile
@bruceoutdoors
bruceoutdoors / find_target_combination.py
Last active Mar 10, 2020
infinitilab algo question
View find_target_combination.py
# python3
from collections import deque
# Store combinations as a tree. The size of the tree directly
# corresponds to the running time of the algorithm - O(2^n)
# Worst runtime is when the sum of items is larger than the target
# and no combination exist. An intuitive optimization here is to
# prune combinations away when the sum has already exceeded the target
class Node:
View course-schedule-ii.cs
public class Solution {
private IList<IList<int>> graph;
private bool[] marked;
private bool[] onStack;
private bool hasCycle;
private Stack<int> s;
public int[] FindOrder(int numCourses, int[,] prerequisites) {
graph = new List<IList<int>>();
marked = new bool[numCourses];
View course-schedule.cs
public class Solution {
private IList<IList<int>> graph;
private bool[] marked;
private bool[] onStack;
private bool hasCycle;
public bool CanFinish(int numCourses, int[,] prerequisites) {
graph = new List<IList<int>>();
marked = new bool[numCourses];
onStack = new bool[numCourses];
View keys-and-rooms.cs
public class Solution {
IList<IList<int>> graph;
bool[] marked;
public bool CanVisitAllRooms(IList<IList<int>> rooms) {
graph = rooms;
marked = new bool[rooms.Count];
dfs(0);
View DisjointSet.cpp
/******************************************************************************
* Execution: ./DisjointSet < input.txt
* Data files: http://algs4.cs.princeton.edu/15uf/tinyUF.txt
* http://algs4.cs.princeton.edu/15uf/mediumUF.txt
* http://algs4.cs.princeton.edu/15uf/largeUF.txt
*
* Weighted quick-union by rank with path compression.
*
* % ./DisjointSet < tinyUF.txt
* 4 3
View disjoint_set.py
# Python3 port of http://algs4.cs.princeton.edu/code/edu/princeton/cs/algs4/UF.java.html
class DisjointSet:
"""
Execution: python disjoint_set.py < input.txt
Data files: http://algs4.cs.princeton.edu/15uf/tinyUF.txt
http://algs4.cs.princeton.edu/15uf/mediumUF.txt
http://algs4.cs.princeton.edu/15uf/largeUF.txt
Weighted quick-union by rank with path compression.
@bruceoutdoors
bruceoutdoors / charcast.cpp
Created May 18, 2017
from int cast to byte, from byte extract hex values.
View charcast.cpp
#include <iostream>
using namespace std;
struct Byte {
void to4Bits(char c)
{
lo = c >> 4;
hi = c & 0x0F;
}
View fft-convolution-inplace.cpp
#include <iostream>
#include <complex>
#include <cmath>
#include <iomanip>
#include <vector>
#include <algorithm>
#include <map>
#include <tuple>
using namespace std;
View fft-convolution-precompute-omega.cpp
#include <iostream>
#include <complex>
#include <cmath>
#include <iomanip>
#include <vector>
#include <algorithm>
#include <map>
#include <tuple>
using namespace std;
View fft-convolution.cpp
#include <iostream>
#include <complex>
#include <cmath>
#include <iomanip>
#include <vector>
#include <algorithm>
using namespace std;
typedef complex<double> xd;
You can’t perform that action at this time.