排序并过滤掉相同的值 一种算法 和 其优化算法(使用it.unimi.dsi.fastutil.longs.LongOpenHashSet)
2014-06-17 13:52
417 查看
import java.util.Arrays; public class LongSortAndFilter { public static long[] process(long[] values, int size) { if (size == 0) { return new long[0]; } Arrays.sort(values, 0, size); long[] tvalues = new long[size]; int index = 0; tvalues[index++] = values[0]; for (int i = 1; i < size; i++) { long value = values[i]; if (value != values[i - 1]) { tvalues[index++] = value; } } long[] fvalues = new long[index]; System.arraycopy(tvalues, 0, fvalues, 0, index); return fvalues; } }
import it.unimi.dsi.fastutil.longs.LongOpenHashSet; import java.util.Arrays; public class LongSortAndFilter { public static long[] process(long[] values, int size) { if (size == 0) { return new long[0]; } LongOpenHashSet set = new LongOpenHashSet(); for (int i = 0; i < size; i++) { set.add(values[i]); } long[] finalValues = set.toLongArray(); Arrays.sort(finalValues); return finalValues; } }
相关文章推荐
- 有如图所示的七巧板,试设计算法,使用至多4种不同颜色对七巧板进行涂色(每块七巧板一种颜色),要求相邻区域的颜色互补相同,打印输出所有可能的涂色方案。
- 53.性能调优之使用 fastutil 优化数据格式
- spark性能调优之使用fastutil优化数据格式
- 一种排序,set的使用
- 06性能调优之使用 fastutil 优化数据格式
- 如果系统要使用超大整数(超过long长度范围),请你设计一个数据结构来存储这种超大型数字以及设计一种算法来实现超大整数加法运算)
- fastutil介绍以及使用fastutil优化Spark作业
- Spark--性能调优之使用fastutil优化数据格式
- Spark性能调优之——在实际项目中,使用fastutil优化数据格式
- 如果系统要使用超大整数(超过long长度范围),请你设计一个数据结构来存储这种超大型数字以及设计一种算法来实现超大整数加法运算
- 再谈脏字过滤(基于hash的优化算法)
- .net下导致Session失效的一种情况:js教本中使用window.open和window.showModalDialog时需要注意
- 一种基于几何多重映射的地形绘制优化算法
- C# 中使用 MD5 算法计算 hash (哈希)值的四种方法
- 验证视图MAC失败。如果此引用程序由网络场或群集承载,请确保<machineKey>配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerateP>
- 一种基于几何多重映射的地形绘制优化算法(转)
- 使用排序化简组合生成算法
- 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate
- dbms_application_info.set_session_longops过程的使用和v$session_longops
- 使用SET NOCOUNT优化存储过程