pub fn zigzag_encode(n: i32) -> u32
ZigZag encode a signed integer to unsigned Maps small signed integers to small unsigned integers 0 -> 0, -1 -> 1, 1 -> 2, -2 -> 3, …