arr

正则API

安稳与你 提交于 2020-03-03 05:50:11
正则表达式:规定字符串中字符出现规律的公式 如果备选字符列表中个别字符之间是连续的,可用-省略中间的字符。比如: 匹配1位数字:   [0-9] 匹配1位小写字母 : [a-z] 匹配1位大写字母 : [A-Z] 匹配1位字母 :   [a-zA-Z] 匹配1位汉字: [\u4e00-\u9fa5] 字符集开头,使用^表示除了xx,但除xx外一切字符都行!范围太大了。 预定义字符集: 对常用字符集的简化标识 [0-9] 一位数字 :           \d [0-9A-Za-z_] 一位字母,数字或下划线: \w 换行,空格,tab 一位空字符 : \s 除回车换行外,任意一个字符     . 量词:规定字符集出现次数的规则 用于字符集之后,默认修饰相邻的前一个字符集 有明确数量的量词: 最少m次,最多n次   : {m,n} 最少m次,多了不限   : {m,} 必须m次        : {m} 没有明确数量的量词: 可有可无,最多1次    ? 可有可无,多了不限    * 至少一次,多了不限   + 正则中如果正文和正则保留字冲突,也可用\转义 5. 分组和选择: 选择:或 正则1|正则2 只要满足任意一个正则即可 分组: () ()扩起的子表达式称为一组 数量词放在()之后,则修改一组出现的次数 如: (去){2} *****分组编号: 正则中每个()

js-关于数组

拥有回忆 提交于 2020-03-03 05:04:21
关于数组,应该是javaScript的一个很重要的知识点,那什么是数组呢? 数组可以说是对象的另外一种表现形式,数组中的特点就是存在于数组中的数据是有顺序的,每一个数据对应一个下标(全靠他了),并且是从0开始逐渐递增,数组的"长度"呢,也就是数组中存放的数据个数,数组中应该说可以放任意类型的数据,包括数字类型、字符串类型、布尔类型、null、undefined、函数类型的等等,这些都可以是数组的成员,但是在我们处理问题的时候会发现,我们把同一个类型的数据放在一个数组中,这样就更容易去处理或解决问题,毕竟我们学习数组,就是为了去解决实际存在的问题嘛。 1、数组的创建方式: (1)声明式 var arr=[a,b,c,d]; (2)构造函数方式 var arr=new Array(); 以上的两种方式都可以去创建数组,有一点需要注意的是,声明式的创建方式放一个数字的话,是表示在这个数组中开辟了一个小空间,里面存放了一个数字。构造函数的方式中如果小括号中写一个数字,表示是在这个数组中开辟了两个小的空间,并没有值,undefined; 2、数组的访问 访问数组的话,其实可以说是相当简单的,只需要通过下标即可,比如:我想要访问上面的a,那么就可以使用数组名[下标],注意一点下标是从0开始的。 3、数组的遍历 遍历说白了,也就是是说把数组中的数据值每一个都访问一遍

关于JavaScript的push()函数

自作多情 提交于 2020-03-03 02:14:49
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。返回值为把指定的值添加到数组后的新长度。 语法:arrayObject.push(newelement1,newelement2,....,newelementX) 参数newelement1,必需。要添加到数组的第一个元素。 参数newelement2,可选。要添加到数组的第二个元素。 参数newelementX,可选。可添加多个元素。 push() 方法可把它的参数顺序添加到 arrayObject 的尾部。它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。该方法会改变数组的长度。 view source print ? 1 <script type= "text/javascript" > 2 var arr = new Array(3) 3 arr[0] = "Apple" 4 arr[1] = "Banana" 5 arr[2] = "Orange" 6 document.write(arr + "<br />" ) 7 document.write(arr.push( "NowaMagic" ) + "<br />" ) 8 document.write(arr) 9 </script> 程序运行结果: view

查找算法之斐波那契查找

自闭症网瘾萝莉.ら 提交于 2020-03-02 10:08:36
1、什么是斐波那契数列? 1、1、2、3、5、8、13、21、34…… 斐波那契数列又被成为黄金分割数列,因为 前一项/后一项越来越趋近于0.618 由上面的数列,可以发现 除了前两项,后面每一项都是前两项的和,如3+5=8、8+13=21… 由此可以得到一下等式 F(n)=F(n-1)+F(n-2) (除了前两项) 2、斐波那契查找和斐波那契数列有什么联系? 斐波那契查找原理与前两种相似,仅仅改变了中间结点(mid)的位置,mid不再是中间或插值得到,而是位于黄金分割点附近,即mid=low+F(k-1)-1(F代表斐波那契数列) 关于F(k)-1 由斐波那契数列可知,F(k)=F(k-1)+F(k-2),那F(k)-1=(F(k-1)-1)+(F(k-2)-1)+1,所以数组长度只要满足 F(k)-1,就可以将数组分为F(k-1)-1和F(k-2)-1左右两部分,其中mid=low+F(k-1)-1 代码实现: package com.yg.search;/* @author Mu_Mu @date 2020/3/1 10:47 */ import java.util.Arrays; public class FibonacciSearch { public static int maxSize = 10; public static void main(String[]

js 常用方法

丶灬走出姿态 提交于 2020-03-02 09:53:26
1.charAt();返回在指定位置的字符,索引范围为从 0 到 length() - 1。 var str="abcdefghijklmn" var str2 = str.charAt(2); var str3 = str.charAt(8); console.log(str2); //c console.log(str3); //i 2.charCodeAt();返回指定位置的字符的Unicode编码 var str = "lily nihao"; var str2 = str.charCodeAt(5);//位置5的字符是h,h的Unicode编码是104 var str3 = str.charCodeAt(3); console.log(str3); //121 console.log(str2); //110 3.conca();连接字符串 ar str1 = "hellow"; var str2 = 'world'; console.log(str2.concat(str1));//把str1连接到str2上 4.indexOf(); 检索字符串,返回的是字符在字符串的下标 var str1 = "hellow"; var num1 = str1.indexOf('o'); //检索字符串,返回的是字符在字符串的下标 //字符串的下标是从0开始计数 var num2 =

快速排序与归并排序

独自空忆成欢 提交于 2020-03-01 20:56:40
快速排序与归并排序 快速排序 快速排序又称”快排”。排序思路:给定一个数组,选定一个分区点pivot,使得小于等于pivot的元素放在左边,大于pivot放在右边,递归使得区间为1那么排序已经是从小到大了。 递归公式:quick_sort(p,q) = quick_sort(p,r-1) + quick_sort(r+1,q)满足p>=q则终止。 代码实现 /** * @Author : zzz * @Date : Created in 16:25 2020/2/22 * @Description : TODO */ public class SortDemo { private int [ ] arr = new int [ ] { 2 , 5 , 3 , 6 , 8 , 1 , 4 , 7 , 10 , 9 } ; public static void main ( String [ ] args ) { SortDemo sort = new SortDemo ( ) ; //快速排序 sort . quick_sort ( ) ; } public void print ( int [ ] a ) { for ( int i = 0 ; i < a . length ; i ++ ) { System . out . print ( a [ i ] + " " ) ; }

Java的异常捕捉(Exception)

我们两清 提交于 2020-03-01 16:30:55
异常的概念 :在Java当中 它是把所有异常信息封装起来 放在一个类里 当遇到异常时 会创建异常类对象 并且抛出 Exception和Error的区别: Exception :异常信息 - 发生异常的原因和位置 是可以处理的 处理完之后 程序是可以继续执行的 在编译 运行时期都可能发生 Error :必须修改源程序才能解决(有些问题修改了源程序也未必能解决) 只有在运行的时候发生 无法解决 什么能扔(抛出)? 任何继承了Throwable类的对象 Exception类默认继承了Throwable 因此可直接抛出: throw new Exception ( ) ; throw new Exception ( "help" ) ; 异常处理方式 方式1、throws 关键字 :只是在方法声明中标识一下 方式2、try…catch()…finally 1、throws手动抛出异常方式 什么时候用手动抛出异常:当我们写的方法给别人用时 并且方法声明中需要传参 为了进行 合法性判断 保证是我规范的参数类型 若出现不合乎规范的参数 需要进行 友好提示 这个时候需要手动抛出异常 在java中提供了关键字 throw 它用来抛出指定异常对象 封装一些提示信息(这些信息可以自己写) throw使用格式: throw new 异常类名 ( 参数列表 ) ; 注意: throw 必须写在 方法体内部

JavaScript函数封装随机验证码

微笑、不失礼 提交于 2020-03-01 09:54:53
JavaScript函数封装随机验证码 数字 大小写字母组成的4位数值验证码 1.首先第一步,我们需要定义一个变量,把所有的数字和大小写字母设定为一个字符串 let str = ‘0123456789QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm’; 2.用 split( ) 方法把字符串分割为数组,定义一个变量来接收 let arr = str.split(’ '); 3.重新定义一个空的字符串,用循环的方式来接收验证码 let newStr = ’ '; 此时需要几位数值的验证码 i 的值就少于几 然后乘以数组 arr 的长度 随机一个数字,作为数组arr的下标 把arr[随机数字(下标)],循环赋值给空的字符串 for(let i = 0; i < 4; i++){ newStr += arr[parseInt(Math.random()*arr.length)]; } 此时的 newStr 就是一个随机出来的4位数值的验证码 4.把写好的代码放进一个函数封装起来,就可以方便随时调用了,是不是很简单啊 以下是整个代码块: function code(){ let str = '0123456789QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm'; let arr

数组

痴心易碎 提交于 2020-03-01 08:06:15
数组 1.数组的本质 本质上,数组属于一种特殊的对象。typeof运算符会返回数组的类型是object。 typeof [1, 2, 3] // "object" 2.length属性 length属性是可写的。如果人为设置一个小于当前成员个数的值,该数组的成员会自动减少到length设置的值。 var arr = [ 'a', 'b', 'c' ]; arr.length // 3 arr.length = 2; arr // ["a", "b"] 清空数组的一个有效方法,就是将length属性设为0。 var arr = [ 'a', 'b', 'c' ]; arr.length = 0; arr // [] 3.数组的空位 var a = [1, , 1]; a.length // 3 如果最后一个元素后面有逗号,并不会产生空位。也就是说,有没有这个逗号,结果都是一样的。 var a = [1, 2, 3,]; a.length // 3 a // [1, 2, 3] 使用delete命令删除一个数组成员,会形成空位,并且不会影响length属性。 var a = [1, 2, 3]; delete a[1]; a[1] // undefined a.length // 3 来源: https://www.cnblogs.com/genyu818/p/12388272

直接插入排序

℡╲_俬逩灬. 提交于 2020-03-01 03:44:21
public class Mytest{ public static void main(String[]args){ int []arr={9,-4,6,-100}; insertSort(arr); System.out.println(Arrays.toString(arr)); } public static void insertSort(int []arr){ for (int i=1;i<arr.length;i++){ int temp=arr[i]; int j; for ( j=i;j>0&&temp<arr[j-1];j--){ arr[j]=arr[j-1]; } arr[j]=temp; } } } 来源: CSDN 作者: xiaohanguo_xiao 链接: https://blog.csdn.net/xiaohanguo_xiao/article/details/104582107