Here you can find the source of hashPoint(int hashlength, double fraction)
Parameter | Description |
---|---|
hashlength | a parameter |
fraction | a parameter |
public static byte[] hashPoint(int hashlength, double fraction)
//package com.java2s; /* //from ww w. j av a 2 s. com Accumulo Collections Copyright 2016 Isentropy LLC Written by Jonathan Wolff <jwolff@isentropy.com> Isentropy specializes in big data and quantitative programming consulting, with particular expertise in Accumulo development and installation. More info at http://isentropy.com. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ public class Main { /** * * returns fraction*FFFF...FF (hashlenth bytes), represented in hex * 0th byte is most significant * * @param hashlength * @param fraction * @return */ public static byte[] hashPoint(int hashlength, double fraction) { int ones = 0xff; byte[] rslt = new byte[hashlength]; double remainder = 0; for (int i = 0; i < rslt.length; i++) { double product = (fraction * ones) + (remainder * 256); int intpart = (int) product; remainder = (product - intpart); rslt[i] = (byte) intpart; } return rslt; } }