Skip to content

Instantly share code, notes, and snippets.

View spiritedRunning's full-sized avatar
🎯
Focusing

Zach Liu spiritedRunning

🎯
Focusing
View GitHub Profile
@spiritedRunning
spiritedRunning / JavaPasswordSecurity.java
Created July 26, 2016 16:28 — forked from jtan189/JavaPasswordSecurity.java
Java PBKDF2 Password Hashing Code
import java.security.SecureRandom;
import javax.crypto.spec.PBEKeySpec;
import javax.crypto.SecretKeyFactory;
import java.math.BigInteger;
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
/*
* PBKDF2 salted password hashing.
* Author: havoc AT defuse.ca
@spiritedRunning
spiritedRunning / PieRingView.java
Last active August 18, 2016 03:23
Drawing Dynamic Pie View
/**
* @brief 圆环饼图统计view
* Created by zhen.liu on 1/5/16.
*/
public class PieRingView extends View {
private float convertAngel;
private float radiusCircle;
// 用于绘制圆弧的矩形
private RectF mCircleRectF;
private Paint paint;
@spiritedRunning
spiritedRunning / GalleryAccountAdapter.java
Last active August 18, 2016 03:43
横向RecyclerView
public class GalleryAccountAdapter extends RecyclerView.Adapter<GalleryAccountAdapter.ViewHolder> {
private static final String tag = GalleryAccountAdapter.class.getSimpleName();
private LayoutInflater mInflater;
private RelativeLayout relativeLayout;
private OnItemClickListener mOnItemClickListener;
// 列表项布局id
private int item_ResID;
private List<HistoryAccount> historyAccountData;
@spiritedRunning
spiritedRunning / FloatingWindow.java
Last active August 18, 2020 08:16
Implement of floating window
public class FloatingWindow extends FrameLayout {
private static final String TAG = "FloatCallView";
private Context mContext;
private int mediaType;
public static int viewHeight;
public static int viewWidth;
@spiritedRunning
spiritedRunning / VideoRecorderView.java
Created December 6, 2017 14:48
Implement of Video Record through SurfaceView
/**
* 视频录制自定义View
*
* @author zhen.liu
* @version 1.0
* @date 2016/6/30
*/
public class VideoRecorderView extends LinearLayout implements MediaRecorder.OnErrorListener {
private static String TAG = "VideoRecordView";
@spiritedRunning
spiritedRunning / sqrt_bisection.java
Last active April 27, 2019 01:07
sqrt二分法实现
public double mySqrt(int x, double precision) {
if (x == 1 || x == 0) {
return x;
}
float left = 0, right = x;
while (left <= right) {
float mid = left + (right - left) / 2;
if (Math.abs(mid * mid - x) <= precision) {
return mid;
} else if (mid > x / mid) {
@spiritedRunning
spiritedRunning / AVLTree.java
Created June 27, 2020 09:42
AVLTree 实现
public class AVLTree {
public static class Node {
int data;
Node leftChild;
Node rightChild;
int height;
public Node(int data) {
this.data = data;
@spiritedRunning
spiritedRunning / HuffmanTree.java
Created June 27, 2020 09:43
哈夫曼树实现
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class HuffmanTree {
public static class Node<E> {
E data;
int weight;
@spiritedRunning
spiritedRunning / Graph.java
Last active June 28, 2020 05:58
图的遍历
public class Graph {
// 节点数目
int size;
// 保存顶点信息
String[] nodes;
// 保存边的信息
int[][] edges;
/**
* A B C D E F G
@spiritedRunning
spiritedRunning / Dijkstra.java
Last active July 5, 2020 03:53
Dijkstra算法实现
package graph;
public class Dijkstra {
// 节点数目
int size;
// 定点信息
String[] nodes;
// 保存边的信息
int[][] edges;