element

[LeetCode] 26. Remove Duplicates from Sorted Array 有序数组中去除重复项

无人久伴 提交于 2020-11-09 01:00:43
Given a sorted array nums , remove the duplicates in-place such that each element appear only once and return the new length. Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory. Example 1: Given nums = [1,1,2], Your function should return length = 2 , with the first two elements of nums being 1 and 2 respectively. It doesn't matter what you leave beyond the returned length. Example 2: Given nums = [0,0,1,1,1,2,2,3,3,4], Your function should return length = 5 , with the first five elements of nums being modified to 0 , 1

检索HTML元素的位置(X,Y)

别来无恙 提交于 2020-11-08 18:29:13
问题: 我想知道如何获取JavaScript中 img 和 div 等HTML元素的X和Y位置。 解决方案: 参考一: https://stackoom.com/question/1r5Y/检索HTML元素的位置-X-Y 参考二: https://oldbug.net/q/1r5Y/Retrieve-the-position-X-Y-of-an-HTML-element 来源: oschina 链接: https://my.oschina.net/u/4432649/blog/3219056

<java泛型>java泛型Generics

▼魔方 西西 提交于 2020-11-08 15:12:38
what 泛型:一般类型,也就是说可以为任何类型. 泛型的本质是“参数化类型”,也就是说: 所操作的数据类型 被指定为一个 参数, 传输 。泛型是在JDK1.5中引入的特性。 why 泛型提供了 编译时 类型安全检测机制,该机制允许程序员在编译时检测到非法的类型,而不是在运行时才出现错误。 使用泛型有以下好处: 编译时强类型检查 无需手动进行类型转换 可以实现复用,编写通用算法 how 泛型类 ArrayList<E> public class Tool<E> { private E e; public Tool(E e1){ this.e = e1; } public E getE() { return e; } public void setE(E e) { this.e = e; } } 泛型方法 1)使用泛型类定义参数类型(常用) 如泛型类Tool<AA>,它的泛型参数即为AA。那么泛型方法可以这样写: public class Tool<AA>{ public void show(AA aa){ } } 2)自定义的参数类型 public <AA> void show(AA aa){ } 注:静态方法不能访问类的泛型,如果需要泛型,我们只能使用方法2(自定义的参数类型) 泛型接口 假设有泛型接口interf<AA>,它的实现类是Tool。 1)确定实现的泛型接口的参数类型

阿里云短信发送

随声附和 提交于 2020-11-08 09:13:14
    阿里云短信平台,可以提供三种短信模板形式(1、验证码模板;2、通知类消息模板;3、推广短信模板)     验证码模板形式:验证码${code},您正在进行身份验证,打死不要告诉别人哦!     通知类消息模板:尊敬的${name}用户,恭喜您成功注册为本商城的会员用户,相信本商城会为您带来良好的体验效果,祝您生活愉快!     推广短信模板:短信测试,短信测试,短信测试,短信测试,短信测试,短信测试     (注:推广短信模板无需参数,其他两个均需要)     (注意:以下方法基本放在service层) 一、开发前准备     1、下载SDK工具包     SDK工具包中一共包含了2个类库,一个aliyun-java-sdk-core包,另外一个是alicom-dysms-api包,将这两个包执行mvn package命令或者mvn deploy命令打包出相应的jar包,添加到工程类库中依赖使用。     SDK&DEMO[ 下载地址 ] 二、编写代码     1、编写短信统一处理函数     SendSmsResponse send(String mobiles, String content, String TemplateCode);     返回值:SendSmsResponse (用于确定是否发送短信成功),判断条件:      if

Java入门(六):数组

流过昼夜 提交于 2020-11-07 13:03:27
数组是一种数据结构,用于存储同一类型值的集合,也可以看做是数据类型一致的一组数据。 一、语法和声明数组 1、语法:数据类型[ ] array = new 数据类型[长度]; 注意: 使用长度创建数组的时候,每个元素都有默认值。 对于int、byt、short、long,其默认值为0; 对于double、float,其默认值为0.0; 对于boolean值,其默认值为false; 对于char,其默认值为编码是0的字符; 对于引用类型(其中包括String),其默认值为null。 2、如果事先已经知道数组的元素,可以直接使用元素初始化数组,但是不需要写数组长度,元素的个数就是数组长度。其次,例如int[ ] a 和int a[ ]两种声明都可用,但是不建议使用后面的写法。 3、如果数据元素不多,并且知道每个元素的值,可以直接使用元素进行初始化。如果元素过多,使用长度创建数组。如果元素没有初始值,使用长度初始化。    /** * 数组的声明 */ public static void testMethod() { // 第一种写法 int [] array = new int [3 ]; // int类型的默认值是0 System.out.println(array[0]); // 0 String[] strArray = new String[3 ]; // 于引用类型

PCIe实践之路:DMA机制

≯℡__Kan透↙ 提交于 2020-11-06 15:31:14
一、PCIe DMA机制 PCIe控制器也提供DMA(Direct Memory access)功能,用来批量地异步数据传输。 1.1 DMA读写的发起和结束 假设现在RC要从EP mem space读1MB数据,可以有这么两种方式:RC发起DMA读;EP发起DMA写。这两种方式结果是等效的,对最后完成中断的方式会不一样,前者通过local interrupt表示自己DMA读完了,后者需要EP发送一笔IMWr来表示DMA读完成了。 1.2 DMA配置 如图表示本地控制器发起一笔1MB写操作 1.2.1 SAR和DST SAR表示DMA传输的数据源地址,如果RC发起从EP读操作,那么SAR必定是EP中某个BAR range内。目标地址DAR就是系统ddr中的地址。反之,如上图所示的写操作,DAR就是EP中mem space。 1.2.2 Max_Payload_Size DMA读写本质上还是通过拆分成TLP来进行的,每次传输的size就是通过tlp header中的length来确定的,而length由控制器的Max_Payload_Size决定,这个值取EP和RC的capability中相应参数的最小值。 1.3、Linked List 对于大批量数据的传输,通常都会有所谓的Linked List Mode。试想一下

dom4j解析XML

折月煮酒 提交于 2020-11-06 08:39:00
dom4j解析XML CreateTime--2018年3月26日15:55:06 Author:Marydon 一、所需jar包   dom4j-1.6.1.jar 二、导入 import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.DocumentHelper; import org.dom4j.Element; 三、具体操作 1.字符串转document对象   方式一: String result = "<Response><userName>Marydon</userName><error_text>成功</error_text></Response>" ; // 将字符串转换成document对象 Document document = DocumentHelper.parseText(res);   方式二: Document document2 = DocumentHelper.createDocument(); // 创建Document document 以xml的格式存放返回参数 Element request = document2.addElement("Request"); // 在 document中 新建一个Request节点 //

JS 各种宽高

谁说我不能喝 提交于 2020-11-04 04:15:44
1、window的各种宽高 outerWidth、innerWidth、outerHeight、innerHeight outerHeight 获取浏览器窗口外部的高度(单位:像素)。表示整个浏览器窗口的高度,包括侧边栏(如果存在)、窗口镶边(window chrome)和调整窗口大小的边框(window resizing borders/handles) innerHeight 浏览器视口的高度(单位:像素),如果存在水平滚动条则包括它 outerWidth 获取浏览器窗口外部的宽度(单位:像素)。表示整个浏览器窗口的宽度,包括侧边栏(如果存在)、窗口镶边(window chrome)和调整窗口大小的边框(window resizing borders/handles) innerWidth 浏览器视口的宽度(单位:像素),如果存在垂直滚动条则包括它 下图中可以看到,outerWidth 和 outerHeight 不仅包含浏览器窗口的宽高,还包括窗口镶边 下图中可以看到,innerWidth和innerHeight,所谓的视口宽高不仅包含内容还包括padding 以上四个属性仅适用于 IE9+,对于老IE 则需注意两点: (1)、IE8及以下不支持 outerWidth 和 outerHeight,且没有提供替代的属性 (2)、针对 innerWidth 和

nordic-mesh中应用的代码实现

。_饼干妹妹 提交于 2020-11-04 04:10:31
nordic-mesh中应用的代码实现 Nordic-Mesh遵循SIG-Mesh-Profile中的mesh定义,实现了element、model等概念。 一个应用中包含一个或多个element,element是可以寻址的实体;每个element中包含多个model,model定义了应用的功能。 每个设备在provision阶段,其中的每个element都会获得一个unicast-address;在config阶段,设置每个model的APP-Key等内容,该过程通过configure_model实现。每个model的发布地址只有一个,订阅地址可以有多个。 Provision阶段 provision过程就是先扫描un_provision帧,然后根据UUID选择进行provision的过程,provision就是给未配网节点设置unicast-address、Netkey、IV_Index的过程。 在nordic的示例中,将provisioner相关的接口封装到了provisioner_helper.c(h)中,由以下四个接口函数控制provision过程。 /* 接口初始化 */ void prov_helper_init(mesh_provisioner_init_params_t * p_prov_init_info); /* 开始扫描beacon帧 */ void prov

HTML基本语法

隐身守侯 提交于 2020-11-03 16:23:01
一、什么是HTML? HTML不是编程语言,是用来描述网页文档(页面结构)的一种标记语言; HTML指超文本标记语言(Hyper Text Markup Language),之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。; HTML规定了自己的语法规则,用来表示比“文本”更丰富的意义,比如图片,表格,链接等。浏览器 ( IE , FireFox 等)软件知道HTML语言的语法,可以用来查看HTML文档。目前互联网上的绝大部分网页都是使用HTML编写的。 二、HTML是什么样的? 简单地来说,HTML的语法就是给文本加上表明文本含义的标签(Tag),让用户(人或程序)能对文本得到更好的理解。 下面是一个最简单的HTML文档: <html> <head> <title>第一个Html文档</title> </head> <body> 欢迎访问<a href="http://hanzhaoxin.cnblogs.com/">我的博客</a>! </body> </html> 所有的HTML文档都应该有一个<html>元素,<html>元素可以包含两个部分:<head>和<body>。 <head>元素用于包含整个文档的一般信息,比如文档的标题(<title>元素用于包含标题),对整个文档的描述,文档的关键字等等。 文档的具体内容就要放在<body>元素里。<a