自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 收藏
  • 关注

原创 反转链表看这里

1、题目描述链接:https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=117&tqId=37777&rp=1&ru=%2Factivity%2Foj&qru=%2Fta%2Fjob-code-high%2Fquestion-ranking&tab=answerKey来源:牛客网输入一个链表,反转链表后,输出新链表的表头。2、解题思路(1)递归法确定递

2021-03-07 10:08:45 309

原创 设计LRU缓存结构

1、题目描述链接:https://www.nowcoder.com/questionTerminal/e3769a5f49894d49b871c09cadd13a61来源:牛客网设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能set(key, value):将记录(key, value)插入该结构 get(key):返回key对应的value值[要求]set和get方法的时间复杂度为O(1) 某个key的set或get操作一旦发生,认为这个key的记录成了最

2021-03-07 09:20:13 855

原创 Linux的开机加载过程

开机过程:按下电源->Linux显示用户登录画面的全过程分为以下5个阶段:内核引导 运行init 系统初始化 建立终端 用户登录系统(1)内核引导计算机打开电源,先BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件后,首先读入/boot目录下的内核文件。解释:BIOS,即Basic Input Output System基本输入输出系统;是一组固化到计算机内主板上一个ROM芯片上的程序,保存着计算机最重要的基本输入输出程序、系统.

2021-01-20 16:18:30 592

原创 OSI七层模型及其作用

本篇简单介绍OSI七层网络模型,及其各层作用(1)应用层:为应用程序提供服务并规定应用程序中通信相关的细节;例如:电子邮件<->电子邮件协议 远程登录<->远程登录协议 文件传输<->文件传输协议(2)表示层:将上层应用小狐狸的信息转换为适合网传输的标准格式; 将来自下一层的数据转换为上层应用能够处理的格式;(3)会话层:负责建立和断开通信连接(数据流动的逻辑通路)(4)传输层:只在通信双方节点上进行...

2021-01-19 10:22:34 2877

原创 单机、分布式、集群基础理解

目录单机结构定义缺点集群和分布式共同点集群定义优点缺点扩展分布式定义优点缺点单机结构定义系统业务量小,将所有代码放在一个项目中,将这个项目部署在一台服务器上。(整个系统所有的服务都有这台唯一的服务器提供)缺点处理能力有限,业务量增长到一定程度,单机的硬件资源无法满足需求。集群和分布式共同点集群、分布式都是为了解决两个问题:高吞吐量 高可用集群定义简单来说,就是复制几个单机,就构成了一个“...

2020-11-18 10:44:20 481

原创 机器学习入门

1.机器学习分类监督学习和无监督学习区别 监督学习 无监督学习 样本集 训练集+测试集 训练集:特征+标签 训练集+测试集 训练集:特征 定义 通过训练,让机器找到特征和标签之间的联系后,当面对测试集中只有特征没有标签的数据时,可以自行判断出其标签。 通过训练,在未加标签的数据中,找到隐藏的结...

2020-11-17 19:43:29 206 1

原创 机器学习?

1.人类学习、机器学习学习一般分为三个过程,即积累经验->总结规律->灵活运用人类学习:一个人根据以往的经验,对一类问题总结出一定的规律,然后利用新的知识来对新的问题作出判断的过程。(栗子:考前疯狂刷题->总结考题知识点->考试真题运用)那么机器学习是什么?(难道是机器学习的过程,其实可以这样理解)网上定义不过如此:定义一:机器学习是指用某些算法指导算法计算机利用已有数据得出适当的模型,并利用此模型对新的情境给出判断的过程。定义二:机器学习是让计算机从较多的数

2020-11-16 16:41:10 144

原创 测试用例-微信扫码

对于微信扫码功能进行了简单测试,主要从功能、性能、兼容性、安全性、易用性、界面进行了设计,不同类型的码,需要根据其具体功能需求进行测试用例的设计。(例如:扫码支付等)思考不完善的地方。欢迎大家补充噢~~~...

2020-11-08 23:37:33 10606

原创 测试用例-微信视频通话

对微信视频通话从以下几个方面进行测试:功能、性能、兼容性、易用性、界面不完善的地方,欢迎大家补充噢

2020-11-03 22:35:04 12605 1

原创 测试用例-一支笔

一支笔的测试用例可以从以下几个方面考虑:功能、性能、兼容性、易用性、安全性、界面、压力有考虑的不全面的地方,欢迎大家补充哦

2020-11-03 17:07:31 5108

原创 测试用例-淘宝直播

测试用例从以下几个方面设计:功能、性能、兼容性、安全性、易用性、界面写的不完善的地方,欢迎在下方评论补充哦

2020-11-03 16:20:26 1180

原创 测试用例-百度搜索框

对百度搜索框的测试用例设计从以下几个方面进行,分别是功能、性能、兼容性、安全性、易用性、界面

2020-11-02 15:04:18 6210

原创 剑指Offer-03从尾到头打印链表

1.题目描述输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入:head = [1,3,2]输出:[2,3,1]2.代码python版本# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def revers

2020-10-28 09:53:16 99

原创 测试用例-微信消息撤回

对微信消息撤回场景,进行了以下几个方面的测试用例设计;分别是功能、性能、兼容性、安全性、易用性

2020-10-28 00:24:05 1529

原创 剑指Offer-01二维数组中的查找

题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。分析1.暴力遍历法(最容易想到)通过遍历该二维数组中的每一个元素,并与target进行比较,相等返回true,不等返回false;2.左上查找法3.右下查找法代码public class Solution { public boolean Find(int target, int [

2020-10-26 22:14:24 75

原创 python入门基础篇

"Life is short,use python"解释运行与C/C++不一样;C/C++将源代码文件转化为可执行文件,再执行python源代码直接由解释器一行一行读取,读一行执行一行跨平台基于python解释器执行,只要操作系统/平台上能运行python解释器就可以运行python源代码可扩展性强可以调用C/C++语言重构代码可嵌入python代码可嵌入到C/C++中执行丰富的库非常庞大的第三方库1.变量和赋值无需声明,直接定义(1)使用“=”进行初始化和赋值操作变量名

2020-10-26 20:50:59 124

原创 浏览器输入url后回车后全过程及其优化

“浏览器输入URL后回车后,会发生什么?”,嗯嗯,很经典的问题概括性大致流程是这样的:(1)查询URL对应的IP地址(DNS域名解析)(2)建立TCP连接,连接服务器(3)浏览器发起请求(4)服务器响应浏览器请求(5)浏览器解析响应,渲染页面(6)关闭TCP连接下面对具体流程以及过程优化做表述:Step1:DNS域名解析(1)浏览器搜索浏览器的DNS缓存,看自身的缓存中是否有该URL对应的ip地址条目,而且没有过期,如果有且未过期则解析到此结束;(2)浏览器缓存中没有,浏览

2020-10-17 11:46:31 289

原创 web测试之包含多个控件元素的注册页面,怎么进行快速测试?

1.包含多个控件元素的注册页面,怎么进行快速测试?根据注册页面的控件类型分别测试;常见的注册页面控件类型有:文本输入框、复选框、下拉框、按钮、超链接一、文本输入框二、单、复选框三、下拉框四、按钮五、超链接一、文本输入框1.唯一性如:用户名注册,输入后检查用户名是否存在,存在给出提示信息(“该用户名已存在”)2.输入类型(1)字母;大小写(2)数字;不同类型(整数、小数、正数、负数、0)(3)特殊字符;(%、&、@、……等等)(4)中文;(5)空;

2020-10-17 10:29:11 344

原创 青蛙跳台阶之详细分析

1.题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。2.题目来源(剑指Offer、中等难度)https://www.nowcoder.com/practice/22243d016f6b47f2a6928b4313c85387?tpId=13&&tqId=11162&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/ques

2020-07-14 11:04:52 339 1

原创 话说“贪心“与“动态规划“

1.算法思想1.1贪心思想1.2动态规划思想将待求解的问题分解成若干个子问题,先分别求解每一个子问题,然后2.算法步骤2.1贪心算法步骤(1)建立数学模型描述问题;(2)将求解的问题分为若干个子问题;2.2动态规划算法步骤3.算法特点3.1贪心3.2动态规划...

2020-07-14 10:25:34 235

原创 剑指offer-剪绳子(递归、动规、贪心)

1.题目描述给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1,m<=n),每段绳子的长度记为k[1],...,k[m]。请问k[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。2.来源https://www.nowcoder.com/practice/57d85990ba5b440ab888fc72b0751bf8?tpId=13&&tqId

2020-07-12 22:10:42 350

原创 剑指Offer-构建乘积数组

1.题目描述给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。(注意:规定B[0] = A[1] * A[2] * ... * A[n-1],B[n-1] = A[0] * A[1] * ... * A[n-2];)2.来源https://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975

2020-07-06 22:12:28 92

原创 剑指Offer-不用加减乘除做加法

1.题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。2.来源https://www.nowcoder.com/practice/59ac416b4b944300b617d4f7f111b215?tpId=13&&tqId=11201&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking3.编吧"递归"递归结束条件:若

2020-07-06 21:54:37 88

原创 剑指offer-二叉树镜像

1.题目描述操作给定的二叉树,将其变换为源二叉树的镜像2.来源https://www.nowcoder.com/practice/564f4c26aa584921bc75623e48ca3011?tpId=13&rp=1&ru=%2Fta%2Fcoding-interviews&qru=%2Fta%2Fcoding-interviews%2Fquestion-ranking3.编吧3.1递归解法这道二叉树镜像问题显然使用递归思想比较简单;递归结束的条件

2020-07-06 13:10:33 110

原创 leetcode01-最大子序和

1.题目描述:给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和;2.来源:https://leetcode-cn.com/problems/maximum-subarray/3.编吧:动态规划核心思想:若当前元素之前的和小于0(presum<0),则丢弃当前元素之前的数列;步骤:初始值:maxsum = nums[0] = -2;presum = 0(1)num = -2;presum = max(presum+n

2020-05-28 18:01:34 206

原创 Java:序列化和反序列化解析

本篇围绕三个问题展开:1.什么是序列化?什么又是反序列化?2.为什么要有序列化这个东西?3.怎么用呢?问题一:什么是序列化,反序列化?...

2020-02-29 11:09:54 180

原创 挑战七大排序算法-07归并排序

归并排序1.原理排序一个数组,先把数组从中间分成前后两个部分,然后对前后两部分分别排序,再将排序好的两部分合并在一起2.实现public void mergeSort(int[] array){ mergeSortInternal(array,0,array.length-1); }​ private void mergeSortInternal...

2020-02-20 17:02:57 135

原创 挑战七大排序算法-06快速排序

快速排序1.原理"分治思想" 从待排序区间选择一个数,作为基准值(pivot); Partition: 遍历整个待排序区间,将比基准值小的(可以包含相等的)放到基准值的左边,将比基准值大的(可以包含相等的)放到基准值的右边; 采用分治思想,对左右两个小区间按照同样的方式处理,直到小区间的长度 == 1,代表已经有序,或者小区间的长度 == 0,代表没有数据。 ...

2020-02-20 17:01:38 201

原创 挑战七大排序算法-05冒泡排序

目录冒泡排序1.原理2.实现3.性能分析冒泡排序1.原理在无序区间,通过相邻数的比较,将最大的数冒泡到无序区间的最后,持续这个过程,直到数组整体有序2.实现public void bubbleSort(int[] array){ int n = array.length; //控制比较次数 for (int i ...

2020-02-20 16:58:53 211

原创 挑战七大排序算法-04堆排序

目录堆排序1.原理2.实现3.性能分析堆排序1.原理基本原理也是选择排序,只是不再使用遍历的方式查找无序区间的最大数,而是通过堆来选择无序区间的最大数升序:大顶堆;降序:小顶堆堆排序的基本思路:a.将无需序列构建成一个堆,根据升序降序需求选择大顶堆或小顶堆;b.将堆顶元素与末尾元素交换,将最大元素"沉"到数组末端;c.重新调整结构,使其满足堆定义,然...

2020-02-20 16:56:50 205

原创 Java:走进类集Collection---List接口篇

Collection1.出现版本JDK1.22.解决问题数组定长问题3.定义Collection接口是Java中保存单个对象的最顶层接口public interface Collection<E> extends Iterable<E> 继承了Interable接口4.继承关系5.常用操作方法 添加元素:boolea...

2020-02-17 14:36:59 178

原创 网络基础篇-1

目录01网络基础1.网络的发展2.网络的划分2.1覆盖范围划分2.2传输技术划分3.网络基础概念3.1IP地址3.2PORT端口3.3协议3.4协议分层3.5网络通信环境中的协议分层3.6数据传输流程01网络基础1.网络的发展第一阶段:独立模式(计算机之间相互独立)第二阶段:网络互联(多台计算机连接在一起,完成数据共享)第三阶段:...

2020-01-05 13:22:14 188

原创 自动化测试Selenium篇-3(操作控件)

操作测试对象控件定位结束后,这就结束了?其实不是的,定位只是第一步。定位之后需要对这个元素进行操作,鼠标点击还是键盘输入取决于我们定位的控件是按钮还是输入框以下是几种简单操作测试对象的方法:1、鼠标点击与键盘输入栗子:先在百度输入框里输入test,然后清空输入selenium后,点击搜索#coding=utf-8from selenium import webdrive...

2020-01-02 22:22:48 393

原创 自动化测试Selenium篇-2(控件定位)

Selenium1.Selenium简介Selenium是ThroughtWorks公司推出的强大的开源Web功能测试工具系列;支持多平台、多浏览器、多语言去实现自动化测试。支持多种开发语言:ruby,python,java,perl,c#等,同时Selenium测试直接自动运行在浏览器中,支持的浏览器包括IE,Chrome和FireFox等2.简单脚本介绍from seleni...

2020-01-02 16:03:02 660

原创 自动化测试基础篇-1(概念知识)

自动化测试1.什么是自动化测试?顾名思义,就是整个测试过程不需要每一步都进行人为测试干预,而是通过人为设定一些测试行为(代码)来使得计算机自动执行测试代码的过程。简言之,就是将人为驱动的测试行为转换为计算机执行的过程。2.常见的自动化测试工具 selenium:web测试 专注于web端的自动化测试工具 免费 小巧 支持多...

2020-01-02 13:35:22 689

原创 Java多线程中Thread与Runnable详解

在初学多线程部分知识时,Thread类与Runnable类是最经常接触到的两个经典类;可追溯至JDK1.0版本,古老的类传说。剧情开始啦,神秘的鲜橙多国度,卖橙子喽(实现数据共享,产生若干线程进行同一数据的处理操作)主角登场:斯先生(Thread),人称”鲜橙F4“之首; R小姐姐(Runnable),人称“仙女姐姐”;坊间议论道:斯先生那可是鲜橙国...

2019-12-30 19:09:22 216

原创 TreeSet有序和无重复值特性的内部原理剖析

此篇用以致敬:那些年,我们一起学过的TreeSet。相信很多学过Java的小孩子们,都知道TreeSet有两大特性:来,大声喊出来一、有序;二、值唯一一、写作背景有木有感觉好高大在最初我们学习集合框架时,Collection接口以及他的宝宝List接口和Set接口一定是我们最先开始接触的。而Set接口是个神奇的接口,为什么呢?因为他有一个淘气的TreeSet。嗯嘛嘛(之所以淘气嘛...

2019-12-26 14:07:11 504 1

原创 网页版的聊天室测试用例

2019-10-30 18:01:33 1399

原创 挑战七大排序算法-03选择排序

选择排序算法的实现思路类似于插入排序,即已排序区间+未排序区间1.算法定义选择排序是基于选择的排序,即每次需要选择元素进行排序2.算法思想(1)第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置(2)然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。(3)以此类推,直到全部待排序的数据元素的个数为零来看看,选择排序原理...

2019-10-20 09:00:41 157

原创 挑战七大排序算法-02希尔排序

算法如其名,肯定是某个优秀的学者Shell提出了这种排序算法;1.定义是简单插入排序的改进版,它与插入排序不同之处在于:希尔排序会优先比较距离较远的元素。希尔排序又称缩小增量排序,是对直接插入排序的优化;2.基本思想该方法实质上是一种分组插入方法比较相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,则进行一次比较就可能消除多个元素交换;(1)算法先将要排序的一组数...

2019-10-19 22:21:24 161

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除