当前位置: 首页 > news >正文

dedecms 购物网站书签制作手工

dedecms 购物网站,书签制作手工,四川发布干部任前公示,wordpress主题安装教程要求 不重复随机11位数字不占存储我们都知道11位数字(random)对应有最大值max和最小值min99999999999和10000000000.很简单的从最小值开始按顺序分发到最大值#xff0c;就满足了不重复#xff0c;不占存储#xff0c;11位数字的特性。那么接下来就要考虑如何生成随机数字这…要求 不重复随机11位数字不占存储我们都知道11位数字(random)对应有最大值max和最小值min99999999999和10000000000.很简单的从最小值开始按顺序分发到最大值就满足了不重复不占存储11位数字的特性。那么接下来就要考虑如何生成随机数字这个特性 如何随机 可以考虑将上面分发的11位id数字进行二进制打乱就可以生成随机数字啦。但是呢打乱后的数字长度可能低于11位或者高于11位那么如何有心机的进行二进制打乱才能保证固定11位呢。 11位数字(random) 不小于min 很自然的可以想到id从0到max-min分发再打乱再加上min肯定不会小于min但是可能会大于max。 id数字特性 random:是要生成的随机数字 id:是顺序分发的数字 minrandommax minminidmax 0idmax-min 复制代码11位数字(random) 不大于max 可以先观察一下max-min对应的二进制 1010011110100011010110000001111111111 如何进制顺序打乱不超过max-min对于上面二进制除高位之外的第一个为1的位之后取最大值即上述二进制变为max_diff 1001111111111111111111111111111111111 这样打乱顺序前三位保持不变后面打乱就可以不超过max-min.我这里是低8位和除去前三位的高八位交换的。 使用率 变化后的二进制的使用率有: max_diff/(max-min)85899345919/8999999999995.4% The code public class ShortChainUtils {private static final long MIN 10000000000L;private static final long SUFFIX_ID ((1L 34) - 1);private static final long PRE_ID (7L 34);private static final long MAX_ID 85899345919L;public static long next(long id) {if (id 0 || id MAX_ID) {throw new IllegalArgumentException(Illegal id: id);}// 非线性id swap(id, 7, 0);id swap(id, 6, 1);// Id后34位long value id SUFFIX_ID;// Id后34位的最低八位和高1-9位交换value (((value 8) | ((value 255) 26)));// Id前3位|Id后34位id (id PRE_ID) | value;// 加上最小值, 保证生成的11位id MIN;return id;}/*** xxxx xxxx xxxx x0xx xxxx xx0x xxxx xxxx|0000 0000 0000 0b00 0000 00a0* 0000 0000*/private static long swap(long value, int x, int y) {return (value (~(1 x)) (~(1 y))) | (((value x) 1) y) | (((value y) 1) x);}private ShortChainUtils() {};public static void main(String[] args){Set set new HashSet();for(int i0;; i) {long id ShortChainUtils.next(i);System.out.println(id ---i);if(set.contains(id)){System.out.println(duplicated);break;}set.add(id);}}复制代码不重复id 对于不重复id的分发可以参考 自增ID的实现 总结 该随机数字算法生成简单效率高容易扩展比如你想生成8位9位可以用类似方法不用记录已生成数字去重。 另外还要注意一点的是要想随机数字不重复重点是ID分发不重复。
http://www.pierceye.com/news/836777/

相关文章:

  • 自己做网站 搜索功能开发企业综合信息服务平台
  • 意大利语网站建设wordpress主题首页显示不全
  • 模板网站免费下载wordpress启用静态
  • 保定网站建设哪家好网站建设实践报告3000字
  • 网站制作项目执行免费制作微网站
  • 西安网站制作费用网站建设小程序开发报价
  • 深圳做针织衫服装的网站软件开发工具手机版
  • 网站域名注册的相关证书证明文件最珠海app
  • 网站规划建设与管理维护大学论文免费个人搭建网站
  • 网站解析时候让做别名企业密信app下载安装
  • 直播网站建设模板网站中文商标域名注册
  • 商务网站建设与管理读后感为什么公司要做网站
  • 高密 网站建设wordpress设置置顶文章
  • 购物京东商城西安官网seo哪家公司好
  • 专门做库存处理的网站沭阳建设网站
  • 建筑必看六个网站门户网站地方生活门户有哪些
  • 江阴 网站开发python基础教程百度亿
  • 邹城网站建设v556本校网站建设
  • 郑州一站式网站搭建北京装饰公司十大排名
  • 网站建设程序代码百度智能创作平台
  • 网上制作网站建立中文网站的英文
  • 网站域名过户查询太原企业网站怎么优化
  • 西安哪些做网站的公司创业平台网站
  • 做网站费用滁州wordpress 快站
  • 上海手机网站制作网站制作最
  • 做一网站APP多少钱网站做照片
  • 会同县做网站设计网站的结构时
  • 行业门户网站制作百度权重是怎么来的
  • 巅云建站as.net 网站开发视频教程
  • 网站开发定制合同在哪个网站可以学做衣服