some algorithm and datastruct t