Python12 切片、迭代
Python高级特性(上) 切片:方便截取list、tuple、字符串部分索引的内容 正序切片 语法:dlist = doList[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素 实例: dolist = [1,3,5,7,9,11] dlist = dolist[0:3] # 与range()函数一致含左不含右 nlist = dolist[:3] # 当开始值为0时,可以不写,效果与dlist一致 print(dlist) print(nli
厘清面向对象四种模式:工厂模式、构造函数模式、原型模式、混合模式
面向对象是一种方法,用来封装功能,方便日后使用,避免大量的重复工作 一、工厂模式 (一)实现方法:在函数内创建一个对象并给对象赋予属性及方法,最终将对象返回。 1 function cPerson(name,sex,age){
2 var o = new Object();
3 o.name = name;
4 o.sex = sex;
5 o.age = age;
6 o.show = function(){
7 console.log(this.nam
PAT B1041 考试座位号
PAT B1041 考试座位号 题目描述: 每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。 输入格式: 输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号
2019杭电多校十 1011 Make Rounddog Happy(rmq + 分治)
题意 有一个大小为 \(n ,(n \leq 3e5)\) 的序列,序列中的每一个数 \(a_i\) 满足\(1 \leq a_i \leq n\), 现定义 good subarray:对于一段区间\(a_l, a_{l+1}, \dots, a_r\),满足区间内无重复元素并且 \(\max\{a_l, a_{l+1}, \dots, a_r\} - (r-l+1) \leq k\)。 求序列a中的 good subarray的数量。 思路 rmq + 分治的套路题。 针对最大值,可通过r
flutter DropdownButton使用
import 'package:flutter/material.dart';
class MyStatefulWidget extends StatefulWidget {
MyStatefulWidget({Key key}) : super(key: key);
@override
_MyStatefulWidgetState createState() => _MyStatefulWidgetState();
}
class _MyStatefulWid
java复习--Oracle数据库
1、数据库链接 pl/sql开发工具; 配置监听和网络服务名; 可通过netManager工具,或直接修改tnsnames.ora文件。 2、Sequence序列 有序唯一,自动增长的数据库对象,专门用来维护主键。 3、伪列 rowid:记录每行数据的地址。 rownum:记录的是准确的查询行数。 利用伪列实现sql分页查询。 4、分组 分组关键词:group by. 分组函数:max、min、sum、avg、count. 5、排序 关键词:order
用JavaScript写一个简单的倒计时,可以应用在发送短信验证码的“59秒后重新发送验证短信”
倒计时——从10倒数到0,点击按钮会还原倒计时 <body>
<!-- 将textvalue值设为10,从10倒数 -->
<input type="text" value="10" id="txt">
<input type="button" value="重新开始" id="btn">
</body>
<script>
var oT = document.getElementById("txt");
var oB = document.
【还是畅通工程 HDU - 1233】【Kruskal模板题】
Kruskal算法讲解 该部分内容全部摘录自刘汝佳的《算法竞赛入门经典》 Kruskal算法的第一步是给所有边按照从小到大的顺序排列。 这一步可以直接使用库函数 qsort或者sort。 接下来从小到大依次考查每条边(u,v)。 情况1: u和v在同一个连通分量中, 那么加入(u, v)后会形成环, 因此不能选择。 情况2: 如果u和v在不同的连通分量, 那么加入(u, v)一定是最优的。 为什么呢? 下面用 反证法——如果不加这条边能得到一个最优解T, 则T+(u, v)一定有且只有一个环,
JDK、CGLIB、Javassist和ASM的动态代理使用对比
动态代理是指在运行时,动态生成代理类。正如标题所示,能够提供动态代理的方式有很多。既然选择这么有很多,那么如何选择会更好呢? 带着这个疑问,我找到了Dubbo的作者——梁飞大神的一篇文章。文章中对四种方式都做了性能测试,从当时测试的结果来看,Javassist成了最好的选择。 不过时间过了那么久,现在在JDK 1.8上,根据上面的测试用例测试,会发现JDK动态代理和CGLIB动态代理的性能提升了很多。 测试的版本信息如下: 1.8.0_201,cglib-3.2.5,javassist-3.1
攻防世界--simple-unpack
下载链接:https://adworld.xctf.org.cn/media/task/attachments/b7cf4629544f4e759d690100c3f96caa 1.准备 获取到信息: 64位文件 upx加壳 2.第一种方法 2.1 IDA以二进制形式打开文件 shift+F12 查找字符串 2.2 get flag! 因此直接就得到了flag{Upx_1s_n0t_a_d3liv3r_c0mp4ny} 3.第二种方法 3.1 upx脱壳 3.2 IDA打开脱壳后的文件 找到m
Windows下学习C语言有哪些集成开发软件?
前言初学者学习C语言遇到的最大困难想必就是搭建环境了,相当多的初学者就是被搭建环境导致放弃了学习编程,就我自己的经验而言,初学编程不应该受限于环境,使用成熟好用的环境就可以了,之后熟悉一些可以在慢慢探究。想到大多数小伙伴都是使用Windows系统,今天就先说下Windows系统下有哪些学习C语言的集成开发环境,由于篇幅问题,具体安装方法之后再详细分解。什么是集成开发工具(IDE)这里大家如果没有接
零基础学习java------day16-----文件,递归
1.File 1.1 构造方法(只是创建已经存在文件的对象,并不能创建没有的文件) (1)public File(String pathname) (2)public File(String parent, String child) (3)public File(File parent, String child) public class FileDemo1 {
public static void main(String[] args) {
File f =
RESTful API 最佳实践(转)
原文:http://www.ruanyifeng.com/blog/2018/10/restful-api-best-practices.html 阮一峰老师的文章,他的文章把难懂的东西讲的易懂 RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心思想就是,客户端发出的数据操作指令都
《深入理解Java虚拟机》- JVM是如何实现反射的
Java反射学问很深,这里就浅谈吧。如果涉及到方法内联,逃逸分析的话,我们就说说是什么就好了。有兴趣的可以去另外看看,我后面可能也会写一下。(因为我也不会呀~) 一、Java反射是什么? 反射的核心是JVM在运行时才动态加载类或调用方法/访问属性,它不需要事先(写代码的时候或编译期)知道运行对象是谁。 反射是由类开始的,从class对象中,我们可以获得有关该类的全部成员的完整列表;可以找出该类的所有类型、类自身信息。 二、反射的一些应用 1、java集成开发环境,每当我们敲入点号时,IDE便会
Caddy源码阅读(二)启动流程与 Event 事件通知
Caddy源码阅读(二)启动流程与 Event 事件通知 Preface Caddy 是 Go 语言构建的轻量配置化服务器。https://github.com/caddyserver/caddy Caddy 整个软件可以说是由不同的 插件 堆砌起来的。自己本身仅提供 Plugin 的注册运行逻辑和 Server 的监听服务功能。 学习 caddy 的源码,实际上是学习 如何构建一个 松耦合的 抽象 Plugin 设计,即模块化插拔的做法。 所以我们的源码阅读,围绕 Caddy 为 Plugi
今日推荐
周排行