Skip to content

Instantly share code, notes, and snippets.

View anhldbk's full-sized avatar
🌴
Calm

Anh Le (Andy) anhldbk

🌴
Calm
View GitHub Profile
@anhldbk
anhldbk / fill_parentheses.py
Created March 26, 2017 16:35
Print all combinations of balanced parentheses
def fill(array, pos, count = 0):
max_count = len(array) / 2
if pos >= len(array ):
if count == 0:
print array
return
label = {
1: '{',
-1: '}'
@anhldbk
anhldbk / example.cpp
Created July 5, 2017 03:17
C/C++ : Returning values by reference
uint32_t counter = 0;
uint32_t& get_counter(){
return counter;
}
int main(){
uint32_t _counter = get_counter();
_counter += 1;
cout << _counter << endl; // print 1
@anhldbk
anhldbk / atomic_reference.cpp
Created July 5, 2017 03:53
Atomic references
#include <atomic>
#include <iostream>
#include <thread>
#include <stdint.h>
using namespace std;
void run_in_pool(std::function<void() > routine, uint8_t max_thread = 4) {
std::thread modifiers[max_thread];
uint8_t i;
@anhldbk
anhldbk / lock_benchmarks.cpp
Created July 5, 2017 08:04
Benchmark for various locking strategies
#include <sys/stat.h>
#include <atomic>
#include <stdio.h>
#include <stdint.h>
#include <assert.h>
#include <map>
#include <iostream>
#include <string.h>
#include <thread>
#include "lock/RwLock.h"
@anhldbk
anhldbk / easy_templating.cpp
Last active July 24, 2017 05:11
C++ tricks
#define Data_T(type) template <typename T> type Data<T>
template<typename T>
class Data {
private:
T _data;
public:
Data(T data);
@anhldbk
anhldbk / hook.js
Last active July 29, 2017 02:51
React Composed
import React, { PropTypes } from "react";
import { Scrollbars } from "react-custom-scrollbars";
import ResponsiveComponent from "../responsive";
export default class Card extends ResponsiveComponent {
render() {
const {
header,
children,
raised,
@anhldbk
anhldbk / transport.cpp
Last active August 3, 2017 04:03
Thrift transport
/**
* Generic interface for a method of transporting data. A TTransport may be
* capable of either reading or writing, but not necessarily both.
*
*/
class TTransport {
/**
* Attempt to read up to the specified number of bytes into the string.
*
@anhldbk
anhldbk / flexbox.html
Created August 3, 2017 05:50
Flexbox
<html>
<head>
<style>
#bar {
background-color: #eee;
height: 600px;
width: 300px;
display: flex;
flex-direction: column;
@anhldbk
anhldbk / pom.xml
Created December 14, 2017 04:29
build fat jar maven
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>vn.zalopay.algo</groupId>
<artifactId>cache</artifactId>
<version>0.1.0</version>
@anhldbk
anhldbk / zalopay-threadsafe.md
Last active November 7, 2019 02:44
ZaloPay Challenges on Java Programming

1. Overview

  • This is an entry test for our ZaloPay candidates
  • He/she must write solutions in English to answer following problems
  • Code must be written in Java

2. Problems

2.1 Thread safety