e1

What happens when an object is assigned to another object

匿名 (未验证) 提交于 2019-12-03 01:57:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 由 翻译 强力驱动 问题: public class DrumKitTestDrive { /** * @param args */ public static void main ( String [] args ) { // TODO Auto-generated method stub Echo e1 = new Echo (); Echo e2 = new Echo (); // **e2 = e1;** int x = 0 ; while ( x < 4 ){ e1 . hello (); e1 . count = e1 . count + 1 ; if ( x == 3 ){ e2 . count = e2 . count + 1 ; } if ( x > 0 ){ e2 . count = e2 . count + e1 . count ; } x = x + 1 ; } System . out . print ( e2 . count ); } } class Echo { int count = 0 ; void hello (){ System . out . println ( "Hellooooo...." ); } } The output of this

因果图法

匿名 (未验证) 提交于 2019-12-03 00:40:02
因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。 如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。 恒等:若c1是1,则e1也是1;否则e1为0。 非:若c1是1,则e1是0;否则e1是1。 或:若c1或c2或c3是1,则e1是1;否则e1为0。“或”可有任意个输入。 与:若c1和c2都是1,则e1为1;否则e1为0。“与”也可有任意个输入。 输入条件的约束有以下4类: E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。 O约束(唯一);a和b必须有一个,且仅有1个为1。 R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。 输出条件约束类型 实例: 解答: 11为中间节点;考虑到原因1和原因2不可能同时为1,因此在因果图上施加E约束。 原因: 1――售货机有零钱找 2――投入1元硬币 3――投入5角硬币 4――押下橙汁按钮 5――.押下啤酒按钮 结果

离散数学:每条边的权重均不相同的带权图有唯一最小生成树

匿名 (未验证) 提交于 2019-12-03 00:33:02
假设存在两个最小生成树T,T‘,其边按权重升序排列分别为{e1, e2, ..., en}和{e1‘, e2‘, ..., en‘}。 那么存在一个最小的k使得weight(ek)!=weight(ek‘)。(也即e1=e1‘, e2=e2‘, ... ek-1=ek-1‘) 此时T‘中没有ek。不妨设w(ek)<w(ek‘),则T‘+ek里必然会有一个环,而且这个环有除了 {e1‘, e2‘, ..., en‘}之外的边(否则在T中就会有这样的环)。删去任一这样的边,即可得到一个更小的生成树,这与T‘是最小生成树矛盾。 由上,题设得证。 原文:https://www.cnblogs.com/KakagouLT/p/9216441.html

leetcode184 部门工资最高的员工 Department Highest Salary

前提是你 提交于 2019-12-02 00:26:59
Employee 表有所有员工。 每个员工有 Id,salary 和 department Id 信息。 创建表和数据: drop table EmployeeCreate table If Not Exists Employee (Idint, Name varchar(255), Salary int, DepartmentId int);drop table Department Create table If Not Exists Department (Idint, Name varchar(255)); Truncate table Employee; insert into Employee (Id, Name, Salary,DepartmentId) values ('1', 'Joe', '70000', '1'); insert into Employee (Id, Name, Salary,DepartmentId) values ('2', 'Henry', '80000', '2'); insert into Employee (Id, Name, Salary,DepartmentId) values ('3', 'Sam', '60000', '2'); insert into Employee (Id, Name, Salary

leetcode181 超过经理收入的员工 Employees Earning More Than Their Managers

旧街凉风 提交于 2019-12-02 00:18:55
Employee 表包含所有员工,包括他们的经理。每个员工都有一个 Id ,此外还有一列对应的经理 Id 。 创建表和数据: drop table EmployeeCreate table If Not Exists Employee (Id int, Name varchar(255), Salary int, ManagerId int); Truncate table Employee; insert into Employee (Id, Name, Salary,ManagerId) values ('1', 'Joe', '70000', '3'); insert into Employee (Id, Name, Salary,ManagerId) values ('2', 'Henry', '80000', '4'); insert into Employee (Id, Name, Salary,ManagerId) values ('3', 'Sam', '60000', Null); insert into Employee (Id, Name, Salary,ManagerId) values ('4', 'Max', '90000', Null); 解法: 1.通过表的自连接,找出每个员工的经理,筛选出薪水比经理薪水高的员工。 select E1.Name as

leetcode177 第N高的薪水 Nth Highest Salary

谁都会走 提交于 2019-12-02 00:12:29
编写一个 SQL 查询语句,获取 Employee 表中第 n 高的薪水( Salary )。 创建表和数据 Create table If Not Exists Employee (Id int, Salary int); Truncate table Employee; insert into Employee (Id, Salary) values('1', '100'); insert into Employee (Id, Salary) values('2', '200'); insert into Employee (Id, Salary) values('3', '300'); 解法: 1.对每一个薪水A,只要大于等于A的不同薪水个数等于N即可。 因此子查询求出大于等于A的不同薪水个数B。当B=A时,能得出结果。 CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT BEGIN RETURN ( select distinct e1.Salary from Employee e1 where N = ( select count(distinct e2.Salary) from Employee e2 where e2.Salary >= e1.Salary ) ); END 2.直接用order

leetcode176 第二高的薪水 Second Highest Salary

删除回忆录丶 提交于 2019-12-02 00:09:34
编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。 创建表和数据: drop table Employee;Create table If Not Exists Employee (Idint, Salary int);insert into Employee (Id, Salary) values('1', '100'); insert into Employee (Id, Salary) values('2', '200'); insert into Employee (Id, Salary) values('3', '300'); 解法: 1. 表自连接 用表的自连接,构造偏序关系。再找次序的最大值,就一定是第二高的薪水。同时,max在没有元组输入时,会返回NULL。如在表中的元组少于2个时。 SELECT MAX(e1.salary) as SecondHighestSalary FROM Employee e1 JOIN Employee e2 WHERE e1.salary < e2.salary; 2. 子查询 子查询方法。用子查询找出最大值,再排除最大值的结果中,求最大值。必须要借助于MAX函数。 select max(salary) as SecondHighestSalary from Employee where salary

Numpy中矩阵和数组的区别

懵懂的女人 提交于 2019-12-01 17:02:20
矩阵(Matrix)和数组(Array)的区别主要有以下两点: 矩阵只能为2维的,而数组可以是任意维度的。 矩阵和数组在数学运算上会有不同的结构。 代码展示 1.矩阵的创建 采用mat函数创建矩阵 class numpy.mat(data, dtype=None) (注释:Unlike matrix, asmatrix does not make a copy if the input is already a matrix or an ndarray. Equivalent to matrix(data, copy=False).这句话的含义也就是说,当传入的参数为一个矩阵或者ndarray的数组时候,返回值是和传入参数相同的引用,也就是当传入参数发生改变时候,返回值也会相应的改变。相当于numpy.matrix(data, copy=False)) import numpy as np e = np.array([[1, 2], [3, 4]]) # 传入的参数为ndarray时 # e= np.matrix([[1, 2], [3, 4]]) # 传入的参数为矩阵时 print(e) print('e的类型:', type(e)) print('---'*5) e1 = np.mat(e) print(e1) print('e1的类型:', type(e1)) print('

RSA加密解密

可紊 提交于 2019-11-29 18:12:26
RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。   RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。   RSA的缺点主要有: A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。 B)分组长度太大,为保证安全性,n 至少也要 600bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个 长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction

最小生成树应用

我们两清 提交于 2019-11-27 16:28:44
1.求类似最小距离最大值/最大距离最小值问题,通过最小/大生成树固定一个条件,另一个条件在树里找到。 例题:货车运输。 求两点间的一条路径,使得最小边权最大。先通过最大生成树确定最大,再从两点间的边里选择最小的边权,用到了lca。 例题:Star Way to Heaven 求路径到一些星星的最小距离的最大值。这个跟上边的不同点是用的是最小生成树,用prim算法找到所有星星以及边界的最小生成树,最大两边界之间的边权的最大值就是答案。 但我们关注的是为什么最小生成树可以接受。因为这两道题虽然题面大体相同,但是这道题更难一些,它需要用一张新图(本来也没有图啊 我们要从左走到右边,那么就要穿过一些星星间相连的边,那么我们可以考虑,如果让答案更优,那么穿过的一定是在相同条件下的边权(也就是距离)更大的边。而且我们可能要穿过很多条边, 题意告诉我们要取这些边边权的最小值,因此题意就转化为要找到一条最大路径的最小边权,就是最小生成树了,是不是很神奇!(我问逼哥,Duanyue,zkq了很久才会的,感谢他们) 2.最小瓶颈树。也就是说最小生成树里最大边的权值最小,可证。 用反证法,首先假设最小生成树为T1,最大边为E1,另外一棵最大边更小的生成树为T2,最大边为E2。 如果E2 < E1,则T2中所有的边权值均小于E1,E1在T1中连接两个连通分量A,B,在T2中一定有连接A,B两个连通分量的边