java 彩票走势图算法_走势图是什么算法的-程序员宅基地

技术标签: 算法  java  彩票走势  

一、算法介绍

本博文主要写了彩票走势图中的遗漏值、出现总次数、平均遗漏值、最大遗漏值、最大连出值的计算逻辑。

二、图文简介

[这是XX网双色球的彩票走势图,博主这里是将彩票数据分区展示,以双色球为例,分了五个区域,本博文中的遗漏值是按照期数的降序排列计算的如下图]

这里写图片描述

三、工具类简介(请仔细看完工具类简介)

彩票走势图的工具类**LotteryTrend**中将彩票的名称彩票的id,及其对应的数字域数据域id,每个区域的起始数字,每个区域的长度等数据按照顺序一一对应定义。另一个工具类**MissValue**就是彩票遗漏值的工具类,里面是具体的**彩票遗漏值、出现总次数、平均遗漏值、最大遗漏值、最大连出值**的计算方法,博主将开奖位置的遗漏值置为0,返给前端的。下面是这几个名词的定义:
**彩票遗漏值**:自上期开出到本期间隔的期数。
**出现总次数**:当前选定的彩票期数区间内该球的出现总次数。
**平均遗漏值**:平均遗漏值计算公式:总期数除以出现的总次数,如果总次数为0,该值为0;如果除不尽将计算结果向下取整。
**最大遗漏值**:历史开奖以来该球连续不出现的最大值,即为距离上次出现的间隔数的最大值。
**最大连出值**:**博主写的是选定期数内连续出现的最大值,与右图不符合**.

四、返回给前端的json数据

五、代码块

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;


/**
 * 彩票走势图工具类
 * @author Administrator
 *
 */
public class LotteryTrend {
   
    

    //所有彩票名称数组
    public static final String[] titleArray={
  
   "超级大乐透","七星彩","排列三","排列五","双色球","福彩3D","江西11选5","11运夺金","广东11选5","上海11选5","浙江11选5","七乐彩","重庆时时彩","胜负彩","安徽快三","湖北快三","吉林快三","江苏快三","江苏11选5","浙江12选5"};

    //彩票的id数组
    public static final String[] lotteryidArray={
  
   "19","18","2","13","16","1","9","8","10","24","27","17","3","71","32","33","34","35","28","22"};
    //每种彩票的区域或者数字域
    public static final String[][] headArray={
  
   {
  
   "红一区","红二区","红三区","后区"},{
  
   "第七位","第六位","第五位","第四位","第三位","第二位","第一位"},{
  
   "百位","十位","个位"},
            {
  
   "万位","千位","百位","十位","个位"},{
  
   "红一区","红二区","红三区","篮球"},{
  
   "百位","十位","个位"},
            {
  
   "万位","千位","百位","十位","个位"},{
  
   "万位","千位","百位","十位","个位"},{
  
   "万位","千位","百位","十位","个位"},
            {
  
   "万位","千位","百位","十位","个位"},{
  
   "万位","千位","百位","十位","个位"},{
  
   "一区","二区","三区"},
            {
  
   "万位","千位","百位","十位","个位"},{
  
   "3","1","0"},{
  
   "百位","十位","个位"},
            {
  
   "百位","十位","个位"},{
  
   "百位","十位","个位"},{
  
   "百位","十位","个位"},
            {
  
   "万位","千位","百位","十位","个位"},{
  
   "万位","千位","百位","十位","个位"}};

    //区域或者数字域的id
    public static final String[][] idxArray ={
  
   {
  
   "area1","area2","area3","back"},{
  
   "num_info7","num_info6","num_info5","num_info4","num_info3","num_info2","num_info1"},{
  
   "num_info3","num_info2","num_info1"},
            {
  
   "num_info5","num_info4","num_info3","num_info2","num_info1"},{
  
   "area1","area2","area3","num_info7"},{
  
   "num_info3","num_info2","num_info1"},
            {
  
   "num_info5","num_info4","num_info3","num_info2","num_info1"},{
  
   "num_info5","num_info4","num_info3","num_info2","num_info1"},{
  
   "num_info5",
            "num_info4","num_info3","num_info2","num_info1"},{
  
   "num_info5","num_info4","num_info3","num_info2","num_info1"},{
  
   "num_info5","num_info4","num_info3","num_info2","num_info1"},
            {
  
   "area1","area2","area3"},{
  
   "num_info5","num_info4","num_info3","num_info2","num_info1"},{
  
   "3","1"</
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jetfill/article/details/78142928

智能推荐

uniapp的video组件视频预览略缩图问题_小程序video缩略图-程序员宅基地

文章浏览阅读2.9k次。工作记录视频预览时,会生成一个缩略图,播放按钮和视频长度为白色。放缩略图为白色时,播放按钮和视频长度看不清,所以需加个背景加了背景效果:解决:controls设置为true,去掉poster属性。poster:设置缩略图,不设置时,视频会抽取第一帧作为缩略图原代码:<video id="myVideo" class="video" @loadedmetadata="loadedmetadata" :src="videoInfo.attachLink" @error="videoE_小程序video缩略图

C++11系列-什么是C++11_>>' operator is treated as two right angle bracket-程序员宅基地

文章浏览阅读2.5k次。C++11系列-什么是C++112013-08-01什么是C++0x?C++0x是C++最新标准标准化过程中的曾用名,在这一系列文章中我们将介绍最新标准添加的一系列新的语言特性。在2011年9月份,C++0x正式由官方发布并命名C++11,现在很多编译器已经支持了部分C++11特性。C++11包括大量的新特性:主要特征像lambda表达式和移动语义,实用的类型推_>>' operator is treated as two right angle brackets in c++11 [-werror=c++11

swift截取两个指定字符串之间的字符串_swift 截取两个字符串之间的字符-程序员宅基地

文章浏览阅读2.6k次。 let i = sss.range(of: "哈哈哈=") let j = sss.range(of: ";") let subStr = sss.substring(with: (i?.upperBound)!..&lt;(j?.lowerBound)!) ..._swift 截取两个字符串之间的字符

Python时间序列实战之ARIMA股票预测_stock_week=stock['rain'].resample('w-mon').mean()-程序员宅基地

文章浏览阅读1.8w次,点赞22次,收藏183次。前两篇博客我们讨论了如何处理时间序列数据以及怎样应用ARIMA模型进行预测,此篇我们来分析一下近几年的股票数据,然后用ARIMA模型做一下预测。由于股票数据不是很稳定,受一些政策和其它环境的影响,所以效果不是很好,主要是通过这个小项目具体应用一下。获取股票数据我们这里使用pandas_datareader来获取我们所需的股票数据,如果No modle,可以pip install一下。..._stock_week=stock['rain'].resample('w-mon').mean()

C++ Primer 中文第 5 版练习答案 第 6 章 函数(27~56)_make_plural头文件-程序员宅基地

文章浏览阅读192次。C++ Primer 中文版(第 5 版)练习解答合集自己写的解答,如有错误之处,烦请在评论区指正!#include <iostream>#include <initializer_list>using namespace std;int sum(initializer_list<int> list) { int sum = 0; for ..._make_plural头文件

如何将Revit格式的BIM数据导入GIS平台?_revit导入dgn文件-程序员宅基地

文章浏览阅读932次。建筑信息模型(Building Information Modeling),简称BIM,国家标准GB/T 51212-2016《建筑信息模型应用统一标准》将BIM做如下定义:在建设工程及设施全生命周期内,对其物理和功能特性进行数字化表达,并依此设计、施工、运营的过程和结果的总称,简称模型。BIM数据不仅包含常见的建筑物(Building),还包含各种构筑物(Structure),例如:厂房、水坝、电站等,也包含线状的基础设施,例如:路、铁路、隧道、管廊、管道等。随着BIM技术应用的普及,尤其是BIM_revit导入dgn文件

随便推点

Hive-Import/Export(导入导出)_hive import-程序员宅基地

文章浏览阅读4.8k次。1 官方地址Hive 0.8.0 之后引入了EXPORT and IMPORT 命令。EXPORT命令将表或分区的数据连同元数据一起导出到指定的输出位置(HDFS上)。然后可以将此输出位置移至不同的Hadoop或Hive实例,并使用IMPORT命令进行导入操作。导出分区表时,原始数据可能位于不同的HDFS位置。还支持导出/导入分区子集的功能。导出的元数据存储在目标目录中,数据文件存储..._hive import

轻松搞定form表单,不再为表单烦恼_表单传递的数据不需要json格式-程序员宅基地

文章浏览阅读132次。  大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标!  今天小编推荐一款表单组件,可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。支持3个UI框架,并且支持生成任何 Vue 组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定。开源协议  使用 MIT 开源许可协议链接地址  公众号【Github导航站】回复关键词【form】获取git_表单传递的数据不需要json格式

Matlab 并行编程——CUDA_matlab利用cuda并行计算-程序员宅基地

文章浏览阅读2.5k次。Matlab 并行编程——CUDAhttp://163n.blog.163.com/blog/static/560355522010111083613574/GPUArrayMATLAB中的GPUArray表示存储在GPU上的数据。使用gpuArray函数可以将数据从MATLAB工作空间传送到GPU。例如:A = data(10);G = gpuArray(A);gathe_matlab利用cuda并行计算

6自定义类型转换器_net6 自定义类型转换器-程序员宅基地

文章浏览阅读115次。一java->Package->cn.itcast.utilsutils->StringToDateConverter.java二 springmvc.xml <!--配置自定义类型转换器--> <bean id="conversionService" class="org.springframework.context.supp..._net6 自定义类型转换器

上帝掷骰子吗--量子物理史话 _拉普拉斯认为上帝选择()以后他不再干涉-程序员宅基地

文章浏览阅读3.3w次,点赞7次,收藏27次。  上帝掷骰子吗--量子物理史话   第一章黄金时代   一   我们的故事要从1887年的德国开始。位于莱茵河边的卡尔斯鲁厄是一座风景秀丽的城市,在它的城中心,矗立着著名的18世纪的宫殿。郁郁葱葱的森林和温暖的气候也使得这座小城成为了欧洲的一个旅游名胜。然而这些怡人的景色似乎没有分散海因里希?鲁道夫?赫兹(Heinrich Rudolf Hertz)的注意力:现在他正_拉普拉斯认为上帝选择()以后他不再干涉

unity3D OnTriggerEnter和OnCollisionEnter的一点个人心得(主要讲区别)_collisionenter 介绍-程序员宅基地

文章浏览阅读987次。太抽象的理论总是让人眼花缭乱,所以我这里以例证为主。1,测试OnTriggerEnter和OnCollisionEnter的区别测试:如果两个物体A,B 两者都有碰撞体collider(Box Collider,Sphere Collider,Capsule Collider等)A,B都有刚体(Rigidbody)A或者B中有一个勾选isTrigger或者两_collisionenter 介绍