用 Java 训练出一只“不死鸟”】的更多相关文章

作者:Kingyu & Lanking FlappyBird 是 2013 年推出的一款手机游戏,因其简单的玩法但极度困难的设定迅速走红全网.随着深度学习(DL)与增强学习(RL)等前沿算法的发展,我们可以使用 Java 非常方便地训练出一个智能体来控制 Flappy Bird. 故事开始于<GitHub 上的大佬们打完招呼,会聊些什么?>,那么,今天我们就来一起看一下如何用 Java 训练出一个不死鸟.游戏项目我们使用了一个仅用 Java 基本类库编写的 FlappyBird 游戏.…
给定一个整型数组,除了一个元素只出现一次外,其余每个元素都出现了三次.求出那个只出现一次的数.注意:你的算法应该具有线性的时间复杂度.你能否不使用额外的内存来实现?详见:https://leetcode.com/problems/single-number-ii/description/ Java实现: 建立一个32位的数组,来统计每一位上1出现的个数,如果某一位上为1的话,那么如果该整数出现了三次,对3去余为0,把每个数的对应位都加起来对3取余,最终剩下来的那个数就是单独的数字. 参考:htt…
出错代码如下:static String u = "user";static String p = "psw";static String url = "jdbc:oracle:thin:@localhost:1521:db_name";con = DriverManager.getConnection(url, u, p); statement = con.createStatement();String query1="select…
我们一般在使用Java弹出窗体的时候,一般是使用Jdialog这个所谓的"对话框类".但是,如果你不是初学者或研究员,而会在使用Java进行swing项目的开发,那么你很可能用到一个swing插件--WindowBuilder.这个插件创建的窗体好是好,但是一般直接在main方法中叙述有关的定义代码和initialize方法初始化等等,甚至连一些命名都为我们命名好了.但是,这也带来了不便,就是在其他窗体类(不管是手写还是wb创建的)加载这个自定义窗体的时候就无法那么容易的加载了.以下,…
有2n+1个数,其中有2n个数出现过两次,找出其中只出现一次的数 例如这样一组数3,3,1,2,4,2,5,5,4,其中只有1出现了1次,其他都是出现了2次,如何找出其中的1? 最简便的方法是使用异或,代码如下: public class XOR { public static void main(String[] args){ ,,,,,,,,}; ;//初始值 ;i<arr.length;i++){ res ^=arr[i]; } System.out.println(res); } } 运…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-…
java 弹出选择目录框(选择文件夹),获取选择的文件夹路径 java 弹出选择目录框(选择文件夹),获取选择的文件夹路径:int result = 0;File file = null;String path = null;JFileChooser fileChooser = new JFileChooser();FileSystemView fsv = FileSystemView.getFileSystemView(); //注意了,这里重要的一句System.out.println(fs…
2017年11月GitHub上最热门的Java项目出炉~ 一起来看看这些项目你使用过哪些呢? 1分布式 RPC 服务框架 dubbohttps://github.com/alibaba/dubbo Star 13970 本月上涨1666 ?wx_fmt=jpeg&wxfrom=5&wx_lazy=1 Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成.主要核心部件:Remoting: 网络通…
Java释出的时候,AWT作为Java最弱的组件受到不小的批评. 最根本的缺点是AWT在原生的用户界面之上仅提供了一个非常薄的抽象层. 例如,生成一个AWT的 复选框会导致AWT直接调用下层原生例程来生成一个复选框. 不幸的是,一个Windows平台上的复选框同MacOS平台或者各种UNIX风格平台上的复选框并不是那么相同. package TomAwt; import java.awt.*; import java.applet.*; import java.awt.event.*; publ…
迁移学习算法之TrAdaBoost from: https://blog.csdn.net/Augster/article/details/53039489 TradaBoost算法由来已久,具体算法可以参考作者的原始文章,Boosting For Transfer Learning. 1.问题定义 传统的机器学习的模型都是建立在训练数据和测试数据服从相同的数据分布的基础上.典型的比如有监督学习,我们可以在训练数据上面训练得到一个分类器,用于测试数据.但是在许多的情况下,这种同分布的假设并不满足…
Java帝国的崛起 前言: 看庭前花开花落,宠辱不惊, 望天上云卷云舒,去留无意. 闹心的事儿,选择释怀: 纠缠的人儿,试着放下, 生活其实很美. 心若向阳,就无惧悲伤. 愿你明朗坦荡纵情豁达,有得有失有坚持,能哭能笑能尽欢. 愿你一生努力一生被爱,想要的都拥有,得不到的都释怀. 昨天在博客园首页发布了<Java帝国崛起>的第一篇<C国程序员的秃头原因>,有一个博友评论觉得我写的都是常识,太简单了,不应该放在首页.我想有必要在这解释一下我写<Java帝国崛起>的初心.…
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 知识点: 交换律:a ^ b ^ c <=> a ^ c ^ b 任何数于0异或为任何数 0 ^ n => n 相同的数异或为0: n ^ n => 0…
137. 只出现一次的数字 II 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,3,2] 输出: 3 示例 2: 输入: [0,1,0,1,0,1,99] 输出: 99 PS: 对每一位单独统计出现1的次数, 如果出现的次数不能整除3说明唯一存在的数在这一位上为1, 时间复杂度O(32N) class Solution { publi…
136. 只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 PS: 异或:5^5=0,5^0=5,相同的数异或得到0,与0异或得到本身,所以把数组所有的数异或一遍,一对对情侣都消掉,就剩那个单身狗了. 线性时间复杂度 class Solution {…
上篇<神器の争>主要是介绍Prophet的特点以及prophet入门的一些注意事项,但离真正的实际运用还有段距离.本篇主要讲解实际运用中Prophet调参的主要步骤以及一些本人实际经验. 一 参数理解篇 class Prophet(object): def __init__( self, growth='linear', changepoints=None, n_changepoints=25, changepoint_range=0.8, yearly_seasonality='auto',…
本文适合有 Java 基础的人群 作者:DJL-Keerthan&Lanking HelloGitHub 推出的<讲解开源项目> 系列.这一期是由亚马逊工程师:Keerthan Vasist,为我们讲解 DJL(完全由 Java 构建的深度学习平台)系列的第 4 篇. 一.前言 很长时间以来,Java 都是一个很受企业欢迎的编程语言.得益于丰富的生态以及完善维护的包和框架,Java 拥有着庞大的开发者社区.尽管深度学习应用的不断演进和落地,提供给 Java 开发者的框架和库却十分短缺.…
搞java的同学们可能对无副作用这个概念比较陌生,这是函数式编程中的一个概念,无副作用的意思就是: 一个函数(java里是方法)的多次调用中,只要输入参数的值相同,输出结果的值也必然相同,并且在这个函数执行过程中不会改变程序的任何外部状态(比如全局变量,对象中的属性,都属于外部状态),也不依赖于程序的任何外部状态. 比如下面的两个方法,就可以认为是无副作用的. /** * * @author leo * */ public class NoSideEffect { public static i…
前言 随着Java开发技术不断被推到新的高度,对于Java程序员来讲越来越需要具备对更深入的基础性技术的理解,比如Java字节码指令.不然,可能很难深入理解一些时下的新框架.新技术,盲目一味追新也会越来越感乏力. 本文既不求照本宣科,亦不求炫技或著文立说,仅力图以最简明.最形象生动的方式,结合例子与实战,让小白也能搞懂这门看似复杂的技术概念. 单刀直入 闲言碎语不要讲,先表一表,什么是Java字节码指令?简而言之,Java字节码指令就是Java虚拟机能够听得懂.可执行的指令,可以说是Jvm层面的…
查看本章节 查看作业目录 需求说明: 车站只剩 50 张从武汉到北京的车票,现有 3 个窗口售卖,用程序模拟售票的过程,要求使用同步方法保证售票过程中票数的正确性 实现思路: 创建 Java 项目,在项目中创建 SellTicketBySync 类,并实现 Runnable 接口 定义 int 类型的变量 ticket,表示剩余的车票数量,ticket 初始值为 50 创建同步方法 sellTicket().在该方法体内,判断 ticket 的值是否大于 0.如果 ticket 的值大于 0,则…
public class rhombic { public static void main(String[] args){ /** * scriber()画菱形的方法,参数 9 是指菱形的对角线的长度 * 参数,在此处,只使用奇数, * 如果,你想要使用偶数,请找我,否则自己处理,哈哈 */ scriber(29); } /** * 画出一个默认大小的菱形 * 功能已经完成,好像可以简化一下 */ private static void scriber(int number) { /** *…
来看一个判断列表相等的例子,看代码: import java.util.ArrayList; import java.util.Vector; public class Client { public static void main(String[] args) { ArrayList<String> strs = new ArrayList<String>(); strs.add("A"); Vector<String> strs2 = new…
线程的优先级(priority)决定了线程获得CPU运行的机会,优先级越高获得的运行机会越大,优先级越低获得的机会越小.Java的线程有10个级别(准确的说是11个级别,级别为0的线程是JVM,应用程序不能设置该级别) 那是不是级别为10的线程肯定比级别为9的线程优先运行呢? 看代码: public class Client { public static void main(String[] args){ //启动20个不同优先级的线程 for (int i = 0; i < 20; i++)…
在编程过程中,我们往往会遇到这种情况,在当前环境中无法解决,比如用户传入的参数错误,IO设备问题等.此时,就要从当前环境中抛出异常提交给上级来处理. 在JAVA语言中,使用throw关键字来抛出异常.来看以下代码 public class A**Exception { private String id; public void setID(String id) { ) { this.id = id; }else { throw new IllegalArgumentException("参数长…
在这里对linux下.sun(oracle) JDK的线程资源占用问题的查找步骤做一个小结:linux环境下,当发现java进程占用CPU资源很高,且又要想更进一步查出哪一个java线程占用了CPU资源时,按照以下步骤进行查找: 先用top命令找出占用资源厉害的java进程id,如: 如上图所示,java的进程id为'12377',接下来用top命令单独对这个进程中的所有线程作监视: 1 top -p 12377 -H 如图: 如上图所示,linux下,所有的java内部线程,其实都对应了一个进…
/**  * 找出四位数的全部吸血鬼数字  * 吸血鬼数字是指位数为偶数的数字,能够由一对数字相乘而得到,而这对数字各包括乘积的一半位数的数字,当中从最初的数字中选取的数字能够随意排序.  * 以两个0结尾的数字是不同意的.  *   比例如以下列数字都是吸血鬼数字 1260=21*60 1827=21*87  2187=27*81  ...  * 比較笨的低效率的做法: 遍历全部四位数, 每生成一个四位数的时候,  *         在双重循环遍历两位数,在两位数的内层循环中推断是否与最外层…
本文目的是通过java实战开发教程理解区块链是什么.将通过实战入门学习,用Java自学开发一个很基本的区块链,并在此基础上能扩展如web框架应用等.这个基本的java区块链也实现简单的工作量证明系统.本文用一个java例子,演示了开发一个区块链应用的过程,涉及到所有区块链的概念和基本实现方法.本文阅读对象,主要是希望和即将从事区块链开发的项目架构师.需要指出的是,我们用150行java代码构建的区块链达不到生产级别的,它只是为了帮助你更好的理解区块链的概念. Java源代码保存在Github 创…
下面这段实例实现了以下功能: 1. profile使用用户本地电脑上的 (selenium 3有问题.因为selenium 3把profile复制到一个temp文件夹里,但并不复制回去.所以每次打开仍是一个空的浏览器.问题待解决) 2. 取出多个跳出框的title和内容 3. 验证打开页面的title是否正确 4. 获取页面弹出框中的验证码 package com.qiujy.testweb_mvn; import java.io.File; import java.io.IOException…
linux环境下,当发现java进程占用CPU资源很高,且又要想更进一步查出哪一个java线程占用了CPU资源时,按照以下步骤进行查找: 1.先用top命令找出占用资源厉害的java进程id,如: 2.如上图所示,java的进程id为'12377',接下来用top命令单独对这个进程中的所有线程作监视: top -p -H 如图: 3.如上图所示,linux下,所有的java内部线程,其实都对应了一个进程id,也就是说,linux上的sun jvm将java程序中的线程映射为了操作系统进程: 我们…
/**  * 找出四位数的所有吸血鬼数字  * 吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘而得到,而这对数字各包含乘积的一半位数的数字,其中从最初的数字中选取的数字可以任意排序.  * 以两个0结尾的数字是不允许的.  *   例如下列数字都是吸血鬼数字 1260=21*60 1827=21*87  2187=27*81  ...  * 比较笨的低效率的做法: 遍历所有四位数, 每生成一个四位数的时候,  *         在双重循环遍历两位数,在两位数的内层循环中判断是否与最外层循环…
package com.ywx.testdemo01; import java.util.Scanner; /** * 题目:给出年月日,计算该日是该年的第n天 * @author yangwenxue * date: 20150320 */ class Order{ public static void orderDate(String date){ int dateSum=0; int year=Integer.valueOf(date.substring(0, 4)); int month…