Skip to content

Instantly share code, notes, and snippets.

View pwxcoo's full-sized avatar
🐟

Xiance Wu pwxcoo

🐟
View GitHub Profile
@pwxcoo
pwxcoo / Client.cs
Created June 6, 2018 10:56
socket corresponding in Revit
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ClientDemo
@pwxcoo
pwxcoo / mathjax.html
Created August 2, 2018 03:37
mathjax
<script src="https://cdn.bootcss.com/mathjax/2.7.4/MathJax.js?config=default">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$','$'],["\\(","\\)"]],
displayMath: [['\\[','\\]'], ['$$','$$']],
},
});
</script>
@pwxcoo
pwxcoo / pac.txt
Last active September 9, 2018 14:19
pac for ss
// Generated by gfwlist2pac
// https://github.com/clowwindy/gfwlist2pac
var domains = {
"stackoverflow.com": 1,
"w3schools.com": 1,
"codeforces.com": 1,
"disqus.com": 1,
"onedrive.live.com": 1,
"quora.com": 1,
@pwxcoo
pwxcoo / crc.py
Last active January 29, 2020 09:46
CRC (Cyclic Redundancy Check) implemented with python
def check(frame, p):
n = len(p) - 1
fcs = frame[0: n]
for i in range(n, len(frame)):
fcs += frame[i]
fcs = bin(int(fcs, 2))[2:]
if (len(fcs) < len(p)):
continue
fcs = bin(int(fcs, 2) ^ int(p, 2))[2:]
while len(fcs) < n:
@pwxcoo
pwxcoo / findKthSmallest.cpp
Created September 10, 2018 10:29
find Kth number in two sorted arrays.
int findKthSmallest(int vec1[], int n1, int vec2[], int n2, int k)
{
if (n1 == 0)
return vec2[k - 1];
else if (n2 == 0)
return vec1[k - 1];
if (k == 1)
return vec1[0] < vec2[0] ? vec1[0] : vec2[0];
int idx1 = n1 * 1.0 / (n1 + n2) * (k - 1);
@pwxcoo
pwxcoo / lru.cpp
Last active September 11, 2018 05:55
LRU cache implemented with cpp
/**
* @author pwxcoo
* @email pwxcoo@gmail.com
* @create date 2018-09-11 10:30:47
* @modify date 2018-09-11 13:28:17
* @desc LRU cache implemented by c++
*/
#ifndef _LRUCACHE_INCLUDED_
#define _LRUCACHE_INCLUDED_
@pwxcoo
pwxcoo / sqrt.py
Created September 12, 2018 03:57
Newton Iteration Sqrt
def newtonSqrt(n, eps=1e-8):
"""
- ASSUME
f(x) = x^2 - n
when f(x)=0, x will be the root of n.
- DEDUCE BY Taylor Series Formula
f(x) = f(x0) + (x - x0)f'(x0)
- WHEN f(x)=0
x = x0 - f(x0)/f'(x0)
x will be closer to the root than x0
@pwxcoo
pwxcoo / cycle.cpp
Last active June 18, 2019 01:31
Find Cycle List Beginning Node
/**
* Time: O(n)
* Space: O(1)
* 1. find list if exists cycle.
* 2. 0 -> a(cycle s) -> b(cycle met) -> c(cycle s(e))
* slow = a + b + (b + c)n1, fast = a + b + (b + c)n2.
* slow * 2 = fast
* 2a + 2b + 2*n1*(b + c) = a + b + n2*(b + c) => a = (n2 - 2*n1) * (b + c) - b
* After meeting, so one start going from head and meanwhile slow start going, they will meet at cycle begin.
**/
@pwxcoo
pwxcoo / inorder.cpp
Last active September 12, 2018 10:02
Binary Tree Traversal of Iteration (non-recursion)
vector<int> inorderTraversal(TreeNode* root) {
stack<TreeNode*> st;
vector<int> res;
auto now = root;
while(!st.empty() || now)
{
while(now)
{
st.push(now);
@pwxcoo
pwxcoo / AtomicIntegerExample.java
Last active June 18, 2019 01:23
Five approaches to print "ABC" 10 times in sequence using 3 threads in Java
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicInteger;
public class AtomicIntegerExample {
private AtomicInteger sycValue = new AtomicInteger(0);
private static final int MAX_SYC_VALUE = 3 * 10;