num

【Java】Math.random()

末鹿安然 提交于 2020-02-20 05:13:37
Math.Random()简介 Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的 左闭右开 区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。 for (int i = 0; i < 5; i++) { double num = Math.random(); System.out.println(num); } 结果如下: 0.991836137537863 0.11210420678832744 0.3349661025274727 0.6154826738190097 0.9783462209720709 Math.Random()简单应用 1、生成 m<= num <n 的随机数 (int)(Math.random()*(n-m)+m) 例如:2<=num<8 for (int i = 0; i < 5; i++) { int num = (int)(Math.random()*(8-2)+2); System.out.println(num); } 结果如下: 5 7 4 5 2 2、生成 m<= num <=n 的随机数 (int)Math.floor((Math.random()*(n-m+1)+m)) 例如:2<=num<=8 for (int i = 0; i < 5; i++

java线程—经典龟兔赛跑问题

邮差的信 提交于 2020-02-20 04:20:58
package jd1908_corejava.ch15.work; //线程经典问题--龟兔赛跑问题 public class Race { public static void main(String[] args) { RabbitAndTurtle rabbit = new RabbitAndTurtle(); rabbit.setName("兔子"); RabbitAndTurtle turtle = new RabbitAndTurtle(); turtle.setName("乌龟"); rabbit.start(); turtle.start(); } } class RabbitAndTurtle extends Thread { private int num; // boolean类型默认初始值为false private static boolean flag; //run执行完毕后线程就会死亡,关闭 //yield(),释放资源,回到run的顶部 @Override public void run() { while (num < 100) { if (flag) { // 线程终止 break; } if (Math.random() < 0.3 && Thread.currentThread().getName().equals("兔子")) { num

面试:谁说的无序就不能用二分查找?

末鹿安然 提交于 2020-02-20 03:27:38
编辑文章 在算法面试中,面试官总是喜欢围绕链表、排序、二叉树、二分查找来做文章,而大多数人都可以跟着专业的书籍来做到倒背如流。而面试官并不希望招收的是一位记忆功底很好,但不会活学活用的程序员。所以学会数学建模和分析问题,并用合理的算法或数据结构来解决问题相当重要。 面试题:打印出旋转数组的最小数字 题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组 {3,4,5,1,2} 为数组 {1,2,3,4,5} 的一个旋转,该数组的最小值为 1。 要想实现这个需求很简单,我们只需要遍历一遍数组,找到最小的值后直接退出循环。代码实现如下: public class Test08 { public static int getTheMin(int nums[]) { if (nums == null || nums.length == 0) { throw new RuntimeException("input error!"); } int result = nums[0]; for (int i = 0; i < nums.length - 1; i++) { if (nums[i + 1] < nums[i]) { result = nums[i + 1]; break; } } return

动手学深度学习(3.3)——循环神经网络进阶

时光毁灭记忆、已成空白 提交于 2020-02-20 03:05:30
GRU RNN存在的问题:梯度较容易出现衰减或爆炸(BPTT) ⻔控循环神经⽹络:捕捉时间序列中时间步距离较⼤的依赖关系 RNN : H t = ϕ ( X t W x h + H t − 1 W h h + b h ) H_{t} = ϕ(X_{t}W_{xh} + H_{t-1}W_{hh} + b_{h}) H t ​ = ϕ ( X t ​ W x h ​ + H t − 1 ​ W h h ​ + b h ​ ) GRU : R t = σ ( X t W x r + H t − 1 W h r + b r ) Z t = σ ( X t W x z + H t − 1 W h z + b z ) H ~ t = t a n h ( X t W x h + ( R t ⊙ H t − 1 ) W h h + b h ) H t = Z t ⊙ H t − 1 + ( 1 − Z t ) ⊙ H ~ t R_{t} = σ(X_tW_{xr} + H_{t−1}W_{hr} + b_r)\\ Z_{t} = σ(X_tW_{xz} + H_{t−1}W_{hz} + b_z)\\ \widetilde{H}_t = tanh(X_tW_{xh} + (R_t ⊙H_{t−1})W_{hh} + b_h)\\ H_t = Z_t⊙H_{t−1} + (1−Z_t)⊙

160622、详解JavaScript变量提升

北慕城南 提交于 2020-02-20 01:45:47
变量在程序中随处可见。它们是一些始终在相互影响,相互作用的的数据和逻辑。正是这些互动使应用程序活了起来。 在JavaScript中使用变量很重要的一方面就是变量的提升 —— 它决定了一个变量何时可以被你的代码使用。如果你在寻找关于这方面的详细介绍,那你算是来对地方了。让我们一起看看吧。 1. 简介 提升 是一种将变量和函数的声明移到函数作用域(如果不在任何函数内的话就是全局作用域)最顶部的机制。 提升影响了变量的生命周期,一个变量的生命周期包含3个阶段: 声明 - 创建一个新变量,例如 var myValue 初始化 - 用一个值初始化变量 例如 myValue = 150 使用 - 使用变量的值 例如 alert(myValue) 这个过程通常是像这样执行的:首先 声明 一个变量,然后用一个值给它 初始化 ,最后就是 使用 它。让我们看一个例子: // 声明 var strNumber ; // 初始化 strNumber = '16' ; // 使用 parseInt ( strNumber ); // => 16 在程序中一个函数可以先 声明 ,后 使用 。 初始化 被忽略掉了。例如: // 声明 function sum ( a , b ) { return a + b ; } // 使用 sum ( 5 , 6 ); // => 11 当这三个步骤按顺序执行的时候

详解JavaScript变量提升

旧街凉风 提交于 2020-02-20 01:40:32
   变 量在程序中随处可见。它们是一些始终在相互影响,相互作用的的数据和逻辑。正是这些互动使应用程序活了起来。   在JavaScript中使用变量很重要的一方面就是变量的提升 —— 它决定了一个变量何时可以被你的代码使用。如果你在寻找关于这方面的详细介绍,那你算是来对地方了。让我们一起看看吧。 1. 简介   提升是一种将变量和函数的声明移到函数作用域(如果不在任何函数内的话就是全局作用域)最顶部的机制。 提升影响了变量的生命周期,一个变量的生命周期包含3个阶段: 声明 - 创建一个新变量,例如 var myValue 初始化 - 用一个值初始化变量 例如 myValue = 150 使用 - 使用变量的值 例如 alert(myValue) 这个过程通常是像这样执行的:首先 声明 一个变量,然后用一个值给它 初始化 ,最后就是 使用 它。让我们看一个例子: // 声明 var strNumber; // 初始化 strNumber = '16'; // 使用 parseInt(strNumber); // => 16 在程序中一个函数可以先 声明 ,后 使用 。 初始化 被忽略掉了。例如: // 声明 function sum(a, b) { return a + b; } // 使用 sum(5, 6); // => 11   当这三个步骤按顺序执行的时候

C#打印报表

和自甴很熟 提交于 2020-02-19 17:59:14
#region 打印 private void MyPrintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { //int x = 100; ///*如果需要改变自己 可以在new Font(new FontFamily("黑体"),11)中的“黑体”改成自己要的字体就行了,黑体 后面的数字代表字体的大小 // System.Drawing.Brushes.Blue , 170, 10 中的 System.Drawing.Brushes.Blue 为颜色,后面的为输出的位置 */ //e.Graphics.DrawString("新乡市三月软件公司入库单", new Font(new FontFamily("黑体"), 11), System.Drawing.Brushes.Black, 170, 10); //e.Graphics.DrawString("供货商:河南科技学院", new Font(new FontFamily("黑体"), 8), System.Drawing.Brushes.Blue, 10, 12); ////信息的名称 //e.Graphics.DrawLine(Pens.Black, 8, 30, 520, 30); //e.Graphics

经典深度卷积神经网络模型原理与实现

旧街凉风 提交于 2020-02-19 17:36:08
卷积神经网络(Convolutional Neural Network,CNN)最初是为解决图像识别等问题设计的,在早期的图像识别研究中,最大的挑战是如何组织特征,因为图像数据不像其他类型的数据那样可以通过人工理解来提取特征。卷积神经网络相比传统的机器学习算法,无须手工提取特征,也不需要使用诸如SIFT之类的特征提取算法,可以在训练中自动完成特征的提取和抽象,并同时进行模式分类,大大降低了应用图像识别的难度;相比一般的神经网络,CNN在结构上和图片的空间结构更为贴近,都是2D的有联系的结构,并且CNN的卷积连接方式和人的视觉神经处理光信号的方式类似。 卷积和池化的随机组合赋予了CNN很大的灵活性,因此也诞生了很多耳熟能详的经典网络:LeNet,AlexNet,VGGNet,NiN,Google Inception Net,ResNet,DenseNet这几种网络在深度和复杂度方面依次递增。下面将分别介绍这几种网络原理,架构以及实现(Pytorch实现)。 LeNet LeNet诞生于1994年,是 最早的深层卷积神经网络之一 ,并且推动了深度学习的发展。从1988年开始,在多次成功的迭代后,这项由Yann LeCun完成的开拓性成果被命名为LeNet5。它是第一个成功大规模应用在手写数字识别问题的卷积神经网络,在MNIST数据集中的正确率可以高达99.2%。

C# IL 指令集

耗尽温柔 提交于 2020-02-19 17:31:41
This is a list of the instructions in the instruction set of the Common Intermediate Language bytecode. Opcode Instruction Description Type of instruction 0x58 add Add two values, returning a new value. Base instruction 0xD6 add.ovf Add signed integer values with ov er f low check. Base instruction 0xD7 add.ovf.un Add unsigned integer values with ov er f low check. Base instruction 0x5F and Bitwise AND of two integral values, returns an integral value. Base instruction 0xFE 0x00 arglist Return arg ument list handle for the current method. Base instruction 0x3B beq <int32 (target)> B ranch to

pyqt5 串口助手运行点击打开串口报错Process finished with exit code -1073740791 (0xC0000409)

喜你入骨 提交于 2020-02-19 14:18:13
pyqt5 串口助手运行点击打开串口报错Process finished with exit code -1073740791 (0xC0000409) 请大神帮忙解决一下,谢谢! 插入真实USB转串口可以正常读取到串口端口 其他按键都可以正常实现功能,唯有打开串口按键不能点击: 代码如下: - - coding: utf-8 - - import sys import serial import serial.tools.list_ports from PyQt5 import QtWidgets from PyQt5.QtWidgets import QMessageBox from PyQt5.QtCore import QTimer from PyQt5 import QtCore from Serial_comm.source.Serial import Ui_Form #跟随窗口自适应 QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling) class Pyqt5_Serial(QtWidgets.QWidget, Ui_Form): def __init__(self): super(Pyqt5_Serial, self).__init__() self.setupUi(self)