- 博客(68)
- 收藏
- 关注
转载 python-反转链表
#!/usr/bin/pythonimport copyclass Node: ''' Node class, include value and pointer of next Node ''' def __init__(self,value,next = None): self.value = value self.next = next def __str__(self): return "Node value:.
2021-05-08 15:08:38 158
原创 python-求字符串不重复的最长子串及其长度(饿了么)
python-求字符串不重复的最长子串及其长度(饿了么)#!/usr/bin/python#import stringdef lsnoDup(st): n = len(st) dic = {} lst = [] #startIndex = 0 maxLen = 0 for i in range(0,n): for j in range(i,n): if st[j] not in lst and (j-i)<
2021-05-08 13:52:29 381
原创 剑指-找出数组中重复的数字
题目 在一个长度为n的数组里的所有数字都在0到n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3。思路 从哈希表的思路拓展,重排数组:把扫描的每个数字(如数字m)放到其对应下标(m下标)的位置上,...
2019-03-11 12:16:03 243
原创 剑指offer:数字在排序数组中出现的次数
题目:统计一个数字在排序数组中出现的次数。例如输入排序数组{1, 2, 3, 3,3, 3, 4, 5}和数字3,由于3在这个数组中出现了4次,因此输出4。分析:对于例子来说,如果采用二分法找到某一个3后,再往前遍历和往后遍历到第一个和最后一个3,在长度为n的数组中有可能出现O(n)个3,因此这样的扫描方法时间复杂度为O(n),效率与从头到尾扫描一样,速度太慢。 这题关键是找到第一个和最...
2019-03-10 22:08:47 149
转载 剑指:不用加减乘除做加法
题目:写一个函数,求两个整数之和,要求在函数体内不得适用+,-,* ,./ 四则运算符号首先,分析如何进行十进制的加法?比如是如何得出5+17=22的,实际上,可以分三步进行:1)只做各位相加不进位,此时相加的结果是12,2)第二步做进位,5+7中有进位,进位的值为10;3)第三步,把前面的两个结果加起来12+10的结果是22,刚好5+17=22除了四则运算之外,只剩...
2019-03-10 22:03:42 127
原创 剑指offer 二叉搜索树的第k个结点
题目:给定一棵二叉搜索树,请找出其中的第k小的结点。如(5,3,7,2,4,6,8)中,第三小结点的值为4。思路:因为二叉搜索树按照中序遍历的顺序打印出来就是排好序的,所以,我们按照中序遍历找到第k个结点就是题目所求的结点。/*public class TreeNode { int val = 0; TreeNode left = null; TreeN...
2019-03-10 21:50:06 94
原创 弱网测试
由于处在移动互联网盛行的时代,网络形态除了有线连接外,还有2G/3G/4G/Wifi/5G等多种手机网络连接方式。身为一个合格的测试人员,需要额外关注的场景远不止断网、网络故障等情况。对于弱网的定义,不同的应用所界定的含义不一样,不仅要考虑各类型网络最低速率,还要结合业务场景和应用类型去划分。按照移动的特性来说,一般应用低于2G速率的都属于弱网,也可以将3G划分为弱网。除此之外,弱信号...
2019-03-10 21:43:20 7192
原创 剑指-将一个字符串转换成一个整数,实现Integer.valueOf(string)的功能
题目:将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。思路:1.先判断第一位是不是符号位,如果有符号,有flag 做标记。2.遍历字符串中的每个字符,如果存在非数字的字符,直接返回 0,否则,用当前字符减去'0'得到当前的...
2019-03-10 21:16:19 401
原创 在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。
public class Solution { public static void main(String[] args) { String str="abbaccdeff"; String c=""; for(int i=0;i<str.length();i++){ String...
2019-03-10 20:54:24 942
转载 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
1.需利用逻辑与的短路特性实现递归终止。2.当n==0时,(n>0)&&((sum+=Sum_Solution(n-1))>0)只执行前面的判断,为false,然后直接返回0;3.当n>0时,执行sum+=Sum_Solution(n-1),实现递归计算Sum_Solution(n)。public class Solution { publi...
2019-03-10 20:29:25 164
原创 斐波那契数列
import java.util.Scanner;public class Solution { public int Fibonacci(int n) { int res=0; int f1=0; int f2=1; if(n==0) return f1; if(n==1) ...
2019-03-10 19:36:33 121
原创 React初认识及组件
现代的应用程序趋向于采用一种称为单页应用(SPA)的模式。不同于传统模式:导航到不同的页面,甚至不需要重新加载一个页面。应用的不同视图被加载到同一页面上。 单页应用:内容是动态显示的,不需要刷新或导航到不同的页面。React 是一个用于构建用户界面的 JAVASCRIPT 库。1、自动化UI状态管理 React主要用于构建UI,在React中,只需要关注...
2019-01-06 20:49:44 182
原创 webpack
webpack强大之处介绍 1、将css、图片以及其他资源打包到同一个包中 2、在打包之前对文件进行预处理(less、coffee、jsx等) 3、 根据入口文件的不同把你的包拆分成多个包 4、支持开发环境的特殊标志位 5、支持模块代码“热”替换 6、支持异步加载 Webpack不仅帮助你打包所有的Javascript文件,还拥有其他应用需要的资源。这样设计可以让你能创建一个自动包...
2019-01-06 20:14:36 111
原创 mocha+should.js
mocha是JavaScript的一种单元测试框架,既可以在浏览器环境下运行,也可以在Node.js环境下运行。使用mocha,我们就只需要专注于编写单元测试本身,然后,让mocha去自动运行所有的测试,并给出测试结果。mocha的特点主要有:1、既可以测试简单的JavaScript函数,又可以测试异步代码,因为异步是JavaScript的特性之一;2、可以自动运行所有测试,也...
2019-01-06 18:15:29 263
转载 package.json字段全解
Name:必须字段最终会是URL的一部分,命令行的参数,目录名,所以不能以点号或下划线开头; 这个名字可能在require()方法中被调用,所以应该尽可能短; 不要在name中包含js, node字样;Version:必须字段Description:可选字段,必须是字符串。npm search的时候会用到。KeyWords:可选字段,字符串数组。npm search的时候会用到。...
2019-01-06 11:34:47 928
原创 接口测试考虑内容
后端接口测试:app测试时需要覆盖或考虑的内容: 从上面这两张图对比可以看出,两个测试活动中相同的部分有功能测试、边界分析测试和性能测试,其它部分由于各自特性或关注点不同需要进行特殊的测试。针对以上三部分相同的内容进行分析:1、基本功能测试: 由于是针对基本业务功能进行测试,所以这部分是两种测试重合度最高的一块,开发同学通常所指的也主要是这部分的内...
2018-12-06 21:17:07 3426
原创 接口测试之HTTP协议详解
HTTP简介:HTTP协议(HyperText Transfer Protocol,超文本传输协议),是用于从万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP工作原理:HTTP协议工作于客户端-服务器(C/S)架构上。浏览器作为HTTP客户端通...
2018-12-06 17:51:25 8395
原创 Jmeter简介
简介:1、压测不同的协议和应用1)web-HTTP,HTTPS(Java,Node JS,PHP,ASP.NET..)2)SOAP/REST Webservices3)FTP4)Database via JDBC5)LDAP 轻量目录访问协议6)Message-oriented middleware(MOM) via JMS7)Mail-SMTP(S),POP3(S...
2018-12-04 14:50:12 274
原创 字符编码--待续
编码:字符串变成字节数组解码:字节数组变成字符串。String-->byte[]; str.getBytes(charsetName);byte[]-->String: new Strng(byte[],charsetName);class EncodeDemo{ public static void main(String[] args) throw ...
2018-12-02 16:47:01 252
原创 泛型
JDK1.5版本以后出现新特性,用于解决安全问题,是一个安全机制。好处:1、将运行时期出现问题ClassCastException转移到编译时期,泛型的使用:集合框架中很常见。泛型前:class Tool{ private Object obj; public void setObject(Object obj){ this.obj=obj;...
2018-12-02 15:41:54 143
原创 匿名内部类
interface Inter{ void show(int a,int b); void func();}class Demo{ public static void main(String[] args){ //补足代码,调用2个函数,要求用匿名内部类 Inter in = new Inter(){ publ...
2018-12-02 11:08:06 179
原创 继承练习
1、继承2、假如开发一个系统需要对员工进行建模,员工包含3个属性:姓名、员工以及工资。经理也是员工,除了含有员工属性外,还含有奖金属性,使用继承的的思想设计出员工类和经理类,要求类中提供必要的方法进行属性访问。 3、this关键字含义,final有哪些特点?this代表本类对象,哪个对象调用this所在函数,this就代表哪个对象,final:修饰类,变量(成员变量,静态变...
2018-12-02 11:07:59 274
原创 搜索一个字符数组中是否存在某个字符,若存在,返回第一次出现的位置,否则,返回-1
若传入的数组为null,抛出IllegalArgumentException异常。public int getIndex(char[] arr,char key){ if(arr==null) throw new IllegalArgumentException("数组为空!"); for(int i=0;i<arr.length;i++){ ...
2018-12-02 11:07:40 2252
原创 异常
JVM内置异常处理机制,Throwable |-Error:严重的错误 |-Exception |-checkedException:编译时被检测的异常,编译器强制对其处理,若未处理,编译失败。 |-RuntimeException:编译时不被检测的异常(运行时异常),该异常发生建议不处理,需要对代码进行修正。...
2018-12-01 22:19:04 241
原创 正则表达式
正则表达式:符合一定规则的表达式。 作用:用于专门操作字符串。 特点:用于一些特定的符号来表示一些代码操作,简化书写例如,对QQ号码进行校验,要求:5~15(0不能开头,只能是数字)import java.util.Scanner;public class RegexDemo_1129 { public static void ...
2018-11-30 11:57:20 174
原创 IO流
IO流用来处理设备之间的数据传输Java对数据的操作是通过流的方式Java用于操作流的对象都在IO包中。流按操作数据分为字节流和字符流,按流向分为输入流,输出流。字节流的抽象基类:InputStream和OutputStream字符流的抽象基类:Reader,Writer注:这4个类派生出的子类名称都是以其父类名作为子类名的后缀。IO流是用于操作数据的,数据的最...
2018-11-29 20:51:48 175
转载 线程池
使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?在Java中可以通过线程池来达到这样的效果。使用线程池的好处: ...
2018-11-27 19:34:25 88
原创 基本数据类型包装类
基本数据类型对象包装类的最常见作用:用于基本数据类型和字符串类型间转换1、基本数据类型-->字符串: 1)基本数据类型+“ ” 2)基本数据类型.toString(基本数据类型值);// Integer.toString(34),将34变成“34”.2、字符串--->基本数据类型 1) xxx a=Xxx.parseXxx(Stri...
2018-11-26 17:00:53 186
原创 StringBuffer常见功能,StringBulider
StringBuffer是字符串缓冲区,容器特点:长度可变化 可以字节操作多个数据类型 最终会通过toString()方法变成字符串1.存储 append():添加至结尾处 insert(int index,数据):将数据插入到指定位置 2.删除 delete(int st...
2018-11-26 16:29:20 142
原创 String常见功能
常见功能:一、获取和判断1、根据位置获取字符char charAt(int index):2、根据字符获取字符在字符串中位置:int indexOf(int ch):返回第一次出现的位置int indexOf(int ch,int fromIndex):从fromIndex开始,返回ch在字符串中出现的位置int indexOf(String str):返回第一次出现的...
2018-11-26 14:41:04 591
原创 java初始化
Person p=new Person(“zhangsan”,20);1,通过JVM(的类加载器)把person.class文件从硬盘加载到内存中,堆内存中开辟空间2,执行静态代码块,(类初始化)3,堆内存开辟空间4,在堆内存中建立对象特有属性,进行默认初始化5,对象进行显示初始化6,构造代码块初始化7,构造函数初始化8,内存地址赋给栈内存中的p变量p.setN...
2018-11-23 20:26:50 208
原创 Java设计模式
一、单例设计模式(一个类只有一个实例)1,构造函数私有化(禁止其他类创建对象,保证对象唯一性)2,类中创建一个本类对象3,提供一个方法可以获取到该对象(public static修饰)//1.饿汉式,public class SingleTonTest { private SingleTonTest(){} private static SingleTonTes...
2018-11-23 20:26:18 65
原创 进制转换(10转2,8,16)
public class JinZhiZhuanHuan { public static void main(String[] args){ toBin(6); System.out.println(); toHex(60); } public static void toBin(int num){ tran...
2018-11-23 16:16:51 550
原创 数组的查找
public class GetIndexOfArr { public static int getIndex(int[] arr,int key){ for(int i=0;i<arr.length;i++){ if(arr[i]==key) return i; } retur...
2018-11-23 10:41:24 673
原创 几种排序算法
真实开发中,用Arrays.sort(arr)1、选择排序选择最小的元素放在第一个位置,接着对不包括第一个记录以外的其他元素进行比较,选择最小的记录,直到进行比较的记录只有一个为止。public static void selectSort(int[] arr){ int len=arr.length; int temp=0; for(...
2018-11-22 22:14:54 177
原创 集合
数组和集合同为容器,区别? 1、数组虽然可以存储对象,但长度固定,集合长度是可变的。 2、数组中可以存储基本数据类型,集合只能存储对象。集合类的特点:集合只用于存储对象,长度可变,能存储不同类型的对象。集合框架: 每一个容器对数据的存储方式都有不同共性方法: 添加:add(): add方法的参数类型的Object,...
2018-11-20 22:19:53 87
原创 Java序列化,类加载器,堆和栈区别
1、什么是Java序列化?在分布式环境下,当进行远程通信时,无论是何种类型的数据,都会以二进制序列的形式在网络上传送。序列化是一种将对象以一连串的字节描述的过程,解决在对对象流进行读写操作时所引发的问题。序列化可以将对象的状态写在流里进行网络传输,或者保存到文件、数据库等系统里,并在需要时把流读取出来重新构造一个相同的对象。如何实现序列化?实现serializable接口2、为...
2018-11-20 21:52:25 504
原创 异常处理,error和exception区别
异常是指程序运行时(非编译时)所发生的非正常情况或错误(事先没有预料到的情况),当程序违反了语义规则时,JVM将出现的错误表示为一个异常并抛出。这个异常可以在catch块中进行捕获,然后进行处理。异常处理的目的是为了提高程序的安全性与鲁棒性。Java语言把异常当作对象来处理,并定义了一个基类Java.lang.Throwable作为所有异常的父类。分为Error(错误)和Exception(异...
2018-11-20 21:12:26 1882
原创 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
先把String转化成array,再通过Character中的几个方法对每个char进行判断。该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。 import java.util.Scanner;public class CharDistinct { public static void main(String[] args)...
2018-11-19 22:28:21 23596
原创 删除字符串中重复的字符
方法一:空间换时间由于常见的字符个数最多为256个,可以申请一个大小为8的int类型(每个int类型占32bit)的数组记录每个字符出现的次数,都初始化为0,把字符的编码作为数组的下标,在遍历字符数组时,如果字符出现的次数为0,把它置为1;如果出现的次数为1,把这个字符置为'\0',最后去掉所有'\0',时间复杂度为O(n)方法二:哈希表import java.util.Hashta...
2018-11-19 22:17:59 1249
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人