num

JavaSE学习总结第10天_面向对象5

人走茶凉 提交于 2020-01-25 09:33:01
10.01 运动员和教练案例分析 教练和运动员案例:运动员分乒乓球运动员和篮球运动员,教练分乒乓球教练和篮球教练。为了出国交流,跟乒乓球相关的人员都需要学习英语。 分析: 10.02 运动员和教练案例实现 1 //定义一个说英语的接口 2 interface SpeakEnglish 3 { 4 //说英语 5 public abstract void speak(); 6 } 7 8 //定义人的抽象类 9 abstract class Person 10 { 11 private String name; 12 private int age; 13 14 public Person() {} 15 16 public Person(String name,int age) 17 { 18 this.name = name; 19 this.age = age; 20 } 21 22 public String getName() 23 { 24 return name; 25 } 26 27 public void setName(String name) 28 { 29 this.name = name; 30 } 31 32 public int getAge() 33 { 34 return age; 35 } 36 37 public void setAge(int

Python学习笔记(一)

让人想犯罪 __ 提交于 2020-01-25 07:47:00
自动化:写代码帮你测试 python、java、php、Go、Ruby。。。 系统的开发语言,和你做自动化使用的语言没关系。针对已经做好的web界面或者接口 可以在nnzhp里搜搜学习笔记,在查找结果里找帖子参考。 http://www.nnzhp.cn/archives/131 python的语法特别简洁。 学习python的用途: 计算机只认识二进制的0和1 编译器(把代码编译成二进制的文件,计算机就会识别这段代码) 语言分为编译型语言和解释型语言 编译型语言: 写好代码后就把代码编译成二进制文件,运行的时候运行编译好的二进制文件。 例如:c、c++、c# 运行的速度快,一次编译,到处运行。 编译过程比较慢。 解释型语言: 运行一行代码编译一行,什么时候运行代码,什么时候编译代码。(运行一次就要编译一次) 例如:php、python、ruby、java、go、javascript、 运行速度比较慢 java需要编译成class文件,但是编译的class文件,计算机也不能识别,需要通过jvm,计算机才 能识别出来。 解释性语言没有编译型语言速度快。 脚本语言 功能单一的语言,叫做脚本语言。 shell、bat、javascript(前端)、html(页面)、vb、 python:后台服务开发,数据挖掘,数据分析,人工智能,自动化运维,自动化测试 看英文书: 1

NOI导刊2010提高(06) 黑匣子

烂漫一生 提交于 2020-01-25 07:22:50
题目描述 Black Box是一种原始的数据库。它可以储存一个整数数组,还有一个特别的变量i。最开始的时候Black Box是空的.而i等于0。这个Black Box要处理一串命令。 命令只有两种: ADD(x):把x元素放进BlackBox; GET:i加1,然后输出Blackhox中第i小的数。 记住:第i小的数,就是Black Box里的数的按从小到大的顺序排序后的第i个元素。例如: 我们来演示一下一个有11个命令的命令串。(如下图所示) 现在要求找出对于给定的命令串的最好的处理方法。ADD和GET命令分别最多200000个。现在用两个整数数组来表示命令串: 1.A(1),A(2),…A(M):一串将要被放进Black Box的元素。每个数都是绝对值不超过2000000000的整数,M$200000。例如上面的例子就是A=(3,1,一4,2,8,-1000,2)。 2.u(1),u(2),…u(N):表示第u(j)个元素被放进了Black Box里后就出现一个GET命令。例如上面的例子中u=(l,2,6,6)。输入数据不用判错。 输入输出格式 输入格式: 第一行,两个整数,M,N。 第二行,M个整数,表示A(l) ……A(M)。 第三行,N个整数,表示u(l) …u(N)。 输出格式: 输出Black Box根据命令串所得出的输出串,一个数字一行。 输入输出样例 输入样例#1

day09_继承、super、this、抽象类

梦想与她 提交于 2020-01-25 07:00:28
继承 由来 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那一个类即可。如图所示: 其中,多个类可以称为子类,单独那一个类称为父类、超类(superclass)或者基类。 继承描述的是事物之间的所属关系,这种关系是: is-a 的关系 。例如,图中兔子属于食草动物,食草动物属于动物。在继承的关系中,“子类就是一个父类”。也就是说,子类可以被当做父类看待。例如父类是员工,子类是讲师,那么“讲师就是一个员工”。可见,父类更通用,子类更具体。我们通过继承,可以使多种事物之间形成一种关系体系。 继承主要解决的问题是共性抽取。 定义 继承: 就是子类继承父类的属性和行为,使得子类对象具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。 好处 提高代码的复用性。 类与类之间产生了关系, 是多态的前提。 继承的格式 通过 extends 关键字,可以声明一个子类继承另外一个父类,定义格式如下: 继承演示,代码如下: 定义员工类Employee,做父类 package demo01; public class Employee { // 定义name属性 String name; // 定义员工的工作方法 public void work() { System.out.println("尽心尽力地工作"); } }

js函数实现递归自调用的方法

夙愿已清 提交于 2020-01-25 05:43:35
js函数的递归调用方法 1.通过函数自身名字递归调用 function sum(num){ if(num<=1){ return 1; }else{ return num+sum(num-1); } } console.log(sum(5));//15 这种通过函数名字调用自身的方式存在一个问题:函数的名字是一个指向函数对象的指针,如果我们把函数的名字与函数对象本身的指向关系断开,这种方式运行时将出现错误。 2.通过arguments.callee调用函数自身 function sum(num){ if(num<=1){ return 1; }else{ return num+arguments.callee(num-1); } } console.log(sum(5));//15 var sumAnother=sum; console.log(sumAnother(5));//15 sum=null; console.log(sumAnother(5));//15 这种方式很好的解决了函数名指向变更时导致递归调用时找不到自身的问题。但是这种方式也不是很完美,因为在严格模式下是禁止使用arguments.callee的。 3.通过函数命名表达式来实现arguments.callee的效果。 var sum=(function(){ 'use strict' return

C语言 · 最长公共子序列 · 最长字符序列

徘徊边缘 提交于 2020-01-25 05:18:38
算法提高篇有两个此类题目: 算法提高 最长字符序列 时间限制:1.0s 内存限制:256.0MB   最长字符序列 问题描述   设x(i), y(i), z(i)表示单个字符,则X={x(1)x(2)……x(m)},Y={y(1)y(2)……y(n)},Z={z(1)z(2)……z(k)},我们称其为字符序列,其中m,n和k分别是字符序列X,Y,Z的长度,括号()中的数字被称作字符序列的下标。   如果存在一个严格递增而且长度大于0的下标序列{i1,i2……ik},使得对所有的j=1,2,……k,有x(ij)=z(j),那么我们称Z是X的字符子序列。而且,如果Z既是X的字符子序列又是Y的字符子序列,那么我们称Z为X和Y的公共字符序列。   在我们今天的问题中,我们希望计算两个给定字符序列X和Y的最大长度的公共字符序列,这里我们只要求输出这个最大长度公共子序列对应的长度值。   举例来说,字符序列X=abcd,Y=acde,那么它们的最大长度为3,相应的公共字符序列为acd。 输入格式   输入一行,用空格隔开的两个字符串 输出格式   输出这两个字符序列对应的最大长度公共字符序列的长度值 样例输入 aAbB aabb 样例输出 2 数据规模和约定   输入字符串长度最长为100,区分大小写。 算法提高 最长公共子序列 时间限制:1.0s 内存限制:256.0MB 问题描述  

Scrapy基础(十三)————ItemLoader的简单使用

陌路散爱 提交于 2020-01-25 03:46:42
ItemLoader的简单使用:目的是解决在爬虫文件中代码结构杂乱,无序,可读性差的缺点 经过之前的基础,我们可以爬取一些不用登录,没有Ajax的,等等其他的简单的爬虫 回顾我们的代码,是不是有点冗长,将所需字段通过xpath或者css解析出来,再自定义语句(还不是函数中) 进行清洗;然后再装入Item中,有没有这样一种方法:从Item中可以直接清洗岂不是很简单 今天就学习 ItemLoader这样一种对戏,简单代码,可读增强 思路: 1,创建一个ItemLoad对象 2,通过该对象的add_css或者add_xpath或者add_value方法将解析语句装入ItemLoader 3,在Item.py中在Filder()中调用函数,用来清洗,处理数据 4,artical_item = item_loader.load_item() 调用这个对象的此方法,写入到Item中 具体代码: 在爬虫文件中: 1 #先引入 2 from ArticalSpider.items import JobboleArticalItem,ArticalItemLoader 3 #使用Itemloader来简化这个解析,装入Item这个过程,使得代码量减少 4 #先创建一个itemLoader()这样一个对象,不需解析list第一个等问题 5

欧拉回路、欧拉通路的判断及求一条欧拉回路

独自空忆成欢 提交于 2020-01-25 03:17:41
欧拉回路、欧拉通路的判断及求一条欧拉回路 算法如下: # include "stdio.h" # include "stdlib.h" # include "string.h" int Warshell ( int * * AdjMarix , int n ) { ////warshell求连通性 int i , j ; int AdjM [ n ] [ n ] ; for ( i = 0 ; i < n ; i ++ ) for ( j = 0 ; j < n ; j ++ ) if ( AdjMarix [ i ] [ j ] || i == j ) AdjM [ i ] [ j ] = 1 ; else AdjM [ i ] [ j ] = 0 ; for ( i = 0 ; i < n ; i ++ ) for ( j = 0 ; j < n ; j ++ ) if ( AdjM [ j ] [ i ] == 1 ) { for ( int k = 0 ; k < n ; k ++ ) { if ( AdjM [ i ] [ k ] ) AdjM [ j ] [ k ] = 1 ; } } for ( i = 0 ; i < n ; i ++ ) { for ( j = 0 ; j < n ; j ++ ) if ( ! AdjM [ i ] [ j ] ) return

14_1随机数问题

喜你入骨 提交于 2020-01-25 02:43:15
题目描述: 写一个函数,输出100个1和10000之间的随机数,并统计1-1000,1001-2000.。。。9001-10000之间各有多少个数。 AC代码 # include <stdio.h> # include <time.h> # include <stdlib.h> int myrand ( ) { srand ( ( unsigned ) time ( NULL ) ) ; int a [ 100 ] ; int num [ 10 ] = { 0 } ; // for ( int i = 0 ; i < 100 ; i ++ ) { a [ i ] = rand ( ) % 10000 + 1 ; //1~10000 printf ( "%d " , a [ i ] ) ; num [ ( a [ i ] - 1 ) / 1000 ] ++ ; } printf ( "\n" ) ; for ( int i = 1 ; i <= 10 ; i ++ ) { printf ( "%d到%d的数有%d个\n" , i * 1000 - 999 , i * 1000 , num [ i - 1 ] ) ; } return 1 ; } int main ( ) { myrand ( ) ; } 来源: CSDN 作者: 查立军 链接: https://blog.csdn

C# GUI应用 实现 2048游戏

徘徊边缘 提交于 2020-01-25 01:37:23
C# GUI应用 实现 2048游戏 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Gui { public partial class Gui : Form { private Map map; public Gui() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { map = new Map(); // 将map类数据显示到图形化界面上 DisplayMap(map.GetMap(), map.TopPoints(), map.Points()); } private void DisplayMap(int[,] map, int topPoints, int points) { // 在best label上显示topPoints best.Text =