自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 React基础--笔记(一)

react的学习笔记

2022-07-17 21:07:52 275

原创 关于vue点击下载的避坑指南

关于vue点击下载的避坑指南

2022-07-05 21:35:03 811

原创 数据结构(Java)——查找算法(二)

查找(二)斐波那契查找(黄金分割查找)也是在有序数列中进行进行查找的一种方法**斐波那契数列{1,1,2,3, 5,8,13, 21, 34, 55 }**发现斐波那契数列的两个相邻数的比例,无限接近黄金分割值0.618斐波那契(黄金分割法)原理:斐波那契查找原理与前两种相似,仅仅改变了中间结点(mid)的位置,mid不再是中间或插值得到,而是位于黄金分割点附近,即mid=low+F(k-1)-1。对F(k-1)-1的理解::F是斐波那契数列,k是斐波那契数列的第几个元素1)由斐波那契数列

2022-01-05 16:38:10 904

原创 数据结构(Java)——查找算法(一)

查找算法(一)线性查找public static void main(String[] args) { int arr[] = {1,8,5,4,2,3,9,7,6}; int index = seqsearch(arr,4); System.out.println(index); } public static int seqsearch(int[] arr, int value) { for (int i = 0; i < arr.length; i++) { if

2022-01-05 16:37:35 546

原创 数据结构(Java)——排序问题(三)

排序问题(三)归并排序归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide- and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案修补在一起,即分而治之)。其思想是:public static void main(String[] args) { int arr[] = { 8, 4, 5, 7, 1, 3, 6, 2 }; // //测试快排的执行

2021-12-26 16:49:50 389

原创 数据结构(Java)——排序问题(二)

排序问题(二)希尔排序法希尔排序是希尔(DonaldShell) 于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序。希尔排序法基本思想:希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止希尔排序分两种情况:交换法和移动位置法交换法:依次分组,缩小增量,比较组间相应位置的元素,进行交换public st

2021-12-26 16:49:11 130

原创 linux基本操作(一)

linux基本操作(一)一、linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。深刻理解 linux 树状文件目录是非常重要的,这里我给大家说明一下。记住一句经典的话:在 Linux 世界里,一切皆文件。目录结构的具体介绍小结linux 的目录中有且只要一个根目录 /linux 的各个目录存放的内容是规划好,不用乱放文件。linux 是以文件的形式管理我们的设备,因此 linux 系统,一切皆为文件。二、1、说明

2021-12-05 20:08:18 454

原创 数据库——SQL语言(一)

SQL语言(一)概述SQL特点:综合统一高度非过程化以同一种语言结构提供多种使用方法语言简洁易学易用基本表本身独立存在的表一个关系就对应一个基本表一个或多个基本表对应一个存储文件一个表可以带若干索引存储文件视图(虚表)数据定义创建删除修改模式CREATE SCHEMADROP SCHEMA表CREATE TABLEDROP TABLEALTER TABLE视图CREATE VIEWDROP VIEW索引CREAT

2021-11-07 16:54:15 352

原创 数据结构(Java)——排序问题(一)

排序问题(一)冒泡排序冒泡排序的基本思想是:通过对待排序列从前向后依次比较相邻的只,若逆序则交换,使大值从前移到后。小结:(1) 一共进行数组的大小-1次大的循环(2)每一趟排序的次数在逐渐的减少(3)如果我们发现在某趟排序中,没有发生一次交换,可 以提前结束冒泡排序。这个就是优化实现代码//当在某一趟中没有发生变化,那就是已经拍好了,提前结束 public static void main(String[] args) { int arr[] = {1,4,0,-3,70,-5};

2021-11-03 17:48:55 160

原创 数据库——关系数据库

关系数据库关系模型关系数据结构域是一组具有相同数据类型的值的集合;;笛卡尔积可以看着是关系的域,由域上的值构成的;;笛卡尔积的大小用基数来表示(1)关系D1 X D2X … D,的子集叫作在域D1, D2, …,Dn上的关系,表示为R (D1, D2,…,Dn);;R是关系名(2)码候选码——若关系中的某一属性组的值能唯一地标识一一个元组,则称该属性组为候选码。。简单的情况:候选码只包含一个属性全码——最极端的情况:关系模式的所有属性组是这个关系模式的候选码,称为全码(All-key)关系

2021-10-31 19:40:53 396

原创 数据结构(Java)——排序总述

排序算法排序的分类包括内部排序和外部排序两种时间复杂度①事后统计法——当程序运行完之后进行评测②事前估算法——通过分析时间复杂度来判断时间频度一个算法花费的时间和语句的执行次数成正比,一个算法中的语句执行次数就是时间频度可以忽略常数项和低次项和系数时间复杂度指能操作语句的重复执行次数的某个函数用O(n)=表示;**常见的算法时间复杂度由小到大依次为: O(1)<O(log2n)<O(n)<O(nlog2n)<O(n^2^)<O(n^3^)< O(n

2021-10-31 19:36:21 114

原创 数据库--绪论

绪论数据库系统概述数据库系统的四个基本概念数据(DATA)——数据是数据库中存储的基本对象,描述事物的符号记录种类:文本、图形、音频、视频、等特点:数据与其语义不可分割数据库(DATABASE)——数据库是长期存储在计算机内、有组织、可共享的大量数据的集合基本特征:数据按一定的数据模型组织、描述和存储;可谓各种用户共享;冗余度小;数据独立性较高;易扩展数据库管理系统(DBMS)——是位于用火和操作系统之间的一层数据管理软件,是基础软件,是一个大型复杂的软件系统,可以科学的组织和存储数据、高效

2021-10-27 23:26:19 169

原创 数据结构作业——C语言中创建空间的函数

title: C语言中创建空间的函数总结data: 2021-10-12 23:42:19tags:- C语言- 笔记- 数据结构- 原创categories: 数据结构C语言中创建空间的函数总结···malloc···calloc···reallocmalloc函数样式—— (TYPE *) malloc(SIZE)该函数可以在内存空间中分配一块长度位SIZE字节的连续空间。同时此函数不能给非配得空间初始化值,还要memset( ? , 大小 ,SIZE)来初始化。当程序.

2021-10-13 15:41:20 612

原创 数据结构(Java)—— 递归应用(一)--迷宫问题

递归应用(一)–迷宫问题使用场景分析思路1、使用二维数组来代替迷宫,做个事前声明map表示地图,其中数据有:为0表示该点没有走过;为1表示墙;2表示通路可以走;3表示该点已经走过,但是走不通。2、循环遍历数组设置出墙来2、指定个寻路方式如(上右下左、左右上下等)4、进行寻路方法的递归,判断相应点的情况代码实现步骤//设置地图 int[][] map = new int[8][7]; for(int i = 0; i<8; i++) { map[i][0]=1;.

2021-10-09 19:37:02 184

原创 数据结构(Java)——递归的基本知识

递归递归的概念递归就是自己调用自己,但是每次传入的数据是不同的,经典的例子就是阶乘。调用机制递归需要遵守的重要规则执行一个方法时,就创建-一个新的受保护的独立空间(栈空间)方法的局部变量是独立的,不会相互影响,比如n变量如果方法中使用的是引用类型变量(比如数组),就会共享该引用类型的数据.递归必须向退出递归的条件逼近,否则就是无限递归,出现StackOverflowError, 死龟了当一个方法执行完毕,或者遇到return, 就会返回,遵守谁调用,就将结果返回给谁,同时当方法执行完毕

2021-10-07 11:00:59 189

原创 数据结构(Java)——中缀表达式转后缀表达式

中缀表达式转后缀表达式(逆波兰表达式)表现形式将中缀表达式转化成后缀表达式的样子是这样的:1+((2+3)*4)-5 ==> 1 2 3 + 4 * + 5 -转化思路分析思路如下:1)先创建两个栈,一个放运算符S1,另一个放运算中间数 s2这里提前说一下:由于后续的操作中S2栈中的数只有PUSH,没有POP,并且最后还要倒序输出一下,就由list来代替栈2)从左到右遍历原中缀表达式3)当遇到操作数的时候就直接将他push到S2中4)当遇到运算符时分一下几种情况:​ ①当S1中

2021-10-04 16:26:27 592

原创 数据结构(Java)——逆波兰表达式

逆波兰表达式前缀、中缀、后缀表达式的规则前缀表达式前缀表达式也叫波兰表达式,他的运算符位于操作数之前。规则如下:1)从右到左扫描,将数字压入堆栈中,2)遇到运算符将栈顶元素和栈顶次元素弹出计算,3)将计算结果压入栈中,重复上述操作知道得出最后结果前缀表达式的样子—— - * + 3 4 5 6 ==>(3+4)*5-6中缀表达式中缀表达式就是我们常见的那种表达式,这种表达式方便人去理解,但是计算机不容易理解。中缀表达式的样子—— (3+4)*5-6后缀表达式后缀表达式也叫

2021-09-29 16:31:19 731

原创 数据结构(Java)——栈实现简单计算器

利用栈实现简单的计算器具体思路1.通过一个index值(索引),来遍历我们的表达式2.如果我们发现是一个数字,就直接入数栈3.如果发现扫描到是一个符号,就分如下情况3.1如果发现当前的符号栈为空,就直接入栈3.2如果符号栈有操作符,就进行比较,如果当前的操作符的优先级小于或者等于栈中的操作符,就需要从数栈中pop出两个数,从符号栈中pop出一个符号,进行运算,将得到结果,入数栈,然后将当前的操作符入符号栈,如果当前的操作符的优先级大于栈中的操作符,就直接入符号栈.4.当表达式扫描完毕,就顺序的

2021-09-28 15:15:54 416

原创 数据结构(Java)——栈的简单应用

栈栈的定义栈就是一个先入后出的有序列表,同时,栈是限制相信列表中元素的插入和删除只能在线性表的同一端进行的一种特殊的线性表。允许插入删除的一端也就是变化的一端,叫做栈顶,另一端是固定的一端就是栈底。当加入数据时,先加在栈底,然后依次栈顶往上走,删除数据时,也是有栈顶开始向外释放数据。其中学术名词出栈(POP)、入栈(PUSH)。栈的应用场景子程序的调用:在跳往子程序前,会先将下个指令的地址存到堆栈中,直到子程序执行完后再将地址取出,以回到原来的程序中。处理递归调用:和子程序的调用类似,只是除了

2021-09-27 20:53:58 301

原创 数据结构(Java)——约瑟夫问题

约瑟夫环问题描述Josephu问题为:设编号为1, 2, ..n的n个人围坐一圈,约定编号为k (1<=k<=n)的人从1开始报数,数到m的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列。解决思路首先是创建一个没有头节点的单向链表,同时让这个链表成环,接着使用算法循环找到对应的节点进行删除具体思路如下:1、构建一个单向的环形链表思路1.先创建第一个节点,让first指向该节点,并形成环形2.后面当我们每创建一

2021-09-24 10:52:46 184

原创 数据结构(Java)——双向链表

双向链表管理单向链表的缺点:单向链表,查找方向只能是一个方向,二双向链表可以此案前或者先后查找单向链表不能自我删除,需要开辅助节点,二双向链表则可以自我删除,所以前边单链表删除时总要找到temp,temp时待删除节点的前一个节点双向链表的增删改查遍历思路——方法同单向链表,就是循环打印代码如下public void list() { //判断链表是否为空 if(head.next == null) { System.out.println("链表为空"); return;

2021-09-23 11:10:57 130

原创 数据结构(Java)——链表面试题

链表面试题一、求链表中的有效节点思路:就是将链表的相关信息进行遍历,找个数据自加代码如下 //找有效节点的个数 public static int getLength(HeroNode head) { if(head.next == null) { //空链表 return 0; } int length = 0; //定义一个辅助的变量 HeroNode cur = head.next; while(cur != null) { length++;

2021-09-22 20:09:30 189

原创 数据结构(Java)——链表

链表链表就是有序列表,如同C++指针,链表是用节点的方式来存储,每个节点包含data域和next域,各个节点不一定连续储存,y以下的链表是带头结点的链表实际应用——增删改查增加节点这里提前声明一下,temp是个辅助变量,因为不能改变头节点,临时储存节点数据的作用添加时(不按顺序添加时)——先遍历链表,找到最后一个节点temp.next = null;,这时将temp.next = newNode;即可代码如下private HeroNode head = new HeroNode(0,"

2021-09-20 20:38:00 149

原创 数据结构(Java)——队列

队列队列是一个有序列表,可以用数组或是链表来实现,遵循先入先出的原则实现思路队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明,其中maxSize 是该队列的最大容量。因为队列的输出、 输入是分别从前后端来处理,因此需要两个变量 front及rear分别记录队列前后 端的下标,front会随着数据输出而改变,而rear 则是随着数据输入而改变,当我们将 数据存入队列时称为addQueue,addQueue的处理需要有两个步骤:思路分析1)将尾指针往后移: rear+1,

2021-09-19 17:34:59 132

原创 数据结构(Java)——稀疏数组

数据结构和算法概述数据结构是算法的基础,程序=数据结构+算法数据结构包括线性结构和非线性结构线性结构线性结构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系2)线性结构有两种不同的存储结构,即顺序存储结构(数组)和链式存储结构(链表)。顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的3)链式存储的线性表称为链表,链表中的存储元素不一定是连续的,元素节点中存放数据元素以及相邻元素的地址信息4)线性结构常见的有:数组、队列、链表和栈非线性结构非线性结构包括:二维数组,多

2021-09-18 11:06:44 135

原创 VUE((未完待续))

VUE一套构建用户界面的前端框架。用VUE向HTML填充数据方便,框架是一套现成的解决方案,是必须要遵守的。学会指令,组件(UI),路由、vuex,组件库,可以进行独立开发。VUE两个特性:数据驱动视图(数据的变化自动渲染页面)、双向数据绑定(js数据变化自动渲染到页面,页面数据变化自动更新到js文件)MVVM是两个特性实现的底层原理,(model view viewmodel)Model表示当前页面渲染时所依赖的数据源。View表示当前页面所渲染的DOM结构。ViewModel(VUE实例)表示vu

2021-08-29 20:36:48 187

原创 VUE笔记

VUE一套构建用户界面的前端框架。用VUE向HTML填充数据方便,框架是一套现成的解决方案,是必须要遵守的。学会指令,组件(UI),路由、vuex,组件库,可以进行独立开发。VUE两个特性:数据驱动视图(数据的变化自动渲染页面)、双向数据绑定(js数据变化自动渲染到页面,页面数据变化自动更新到js文件)MVVM是两个特性实现的底层原理,(model view viewmodel)Model表示当前页面渲染时所依赖的数据源。View表示当前页面所渲染的DOM结构。ViewModel(VUE实例)表示vu

2021-08-22 19:21:49 120

原创 正则表达式

title: 原生JS的正则表达式data: 2021-08-05 20:33:47tags:- 原生JS- 正则表达式categories: 前端正则表达式一,概述正则表达式是用于匹配字符串中字符组合的模式,正则表达式也是对象。在/ /内书写正则表达式的内容。它的相关作用有:可以验证表单、过滤敏感词、提取特定字符串。二、使用1.创建①利用RegExp创建var regexp = new RegExp(/abc/);②利用字面量创建var reg = /123/;.

2021-08-08 20:22:13 283

原创 node.js

node.js学习(一)一、fs文件系统模块fs.readFile() 读取指定文件中的内容fs.writeFile() 向指定文件写入内容使用这个模块需要提前导入 const fs = require(‘fs’)1、fs.readFile() 读取指定文件中的内容fs.readFile( path , [options], callback)options 表示用什么样的格式读取文件const fs = require('fs')//引入模块fs.readFile('./1.js',

2021-08-01 17:20:23 138

原创 同源策略和跨域

同源策略和跨域一、同源策略两个网页的协议域名和端口都相同,则这两个页面有相同的源同源策略是浏览器提供的一个安全功能,隔离潜在危险的安全机制就是说A网站的js不可操作非同源的C的资源交互二、跨域只要不是同源就是跨域跨域的拦截:浏览器正常发起请求,接口正常操作返回数据,跨域回来的数据被浏览器的同源策略拦截,到这页面无法获得数据实现跨域请求:JSONP(只支持get不支持post)和CORS(W3C标准)三、JSONP(并非是ajax,而是JS脚本请求)底层原理就是将函数的定义和调用分离j

2021-07-25 15:08:36 208 2

原创 Ajax加强

Ajax加强一、XMLHttpRequest(简称xhr)浏览器专门负责请求数据资源的对象,1、使用xhr发起GET请求创建对象——调用open(‘get/post’, ‘url’)函数——调用send()——监听oateadystatechange事件<script> // 1. 创建 XHR 对象 var xhr = new XMLHttpRequest() // 2. 调用 open 函数 xhr.open('GET', 'http://www.l

2021-07-25 15:05:29 153 1

原创 数据可视化v2.0

温馨提示,图片未转存加载,建议看后面的PDF文件数据可视化使用场景:通用报表 ,移动端图表,大屏可视化,图编辑分析,地理可视化常见的JS库D3,js(入手难)、echarts.js(WPS)、highcharts.js(OFFICE)承上启下的作用。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oTKcDiNn-1626595121658)(C:\Users\墨宝\AppData\Roaming\Typora\typora-user-images\image-202

2021-07-18 16:00:01 310

原创 移动端布局v2.0

移动端布局一、视口浏览器显示页面内容的屏幕区域布局视口视觉视口理想视口meta视口标签主要目的:布局视口和理想视口一致二、meta标签 标准的完美的写法​width 宽度设置的是视口的宽度,设备宽度initial-scale 初始缩放比 >0maximum-scale 最大缩放比 >0minimumscale 最小缩放比 >0user-scalable 用户是否可以缩放,yes或是no(

2021-07-12 17:44:46 141

原创 CSS特效——HOVER的相关应用(上)

CSS特效——HOVER的相关应用(上)一、邮件发送这是靠动画完成,当经过时触发动画,动画将左边的发送图标在一个流程中先向右移动到最右。再回到最初。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="view

2021-05-14 12:06:20 224

原创 CSS特效——旋转相册

CSS特效——旋转相册一、制作思路想通过定位的方式将所有的相片叠加到一起,再通过3D旋转将所有的相册拼成一个正方体,最后使用动画是其动起来。附加特效:::可以鼠标经过是,相片的映像层有小变大,由虚变实。二、步骤详解1、初始化和基础框架 <div class="outer"> <div class="min"> <img src="image/1.jpeg" alt="javascript:;" class="imgs">

2021-05-06 10:10:04 860

原创 JS特效——时钟轮盘

JS特效——时钟轮盘文章目录JS特效——时钟轮盘一、制作思路二、制作步骤首先定义相应的盒子为盒子渲染出自己喜欢的样式JS创建盒子里的内容并且将内容填充到相应的地方定义旋转的函数设置定时器将函数放进去三、完整代码四、知识点五、效果展示一、制作思路首先,先定义时分秒年月日的盒子,之后空着他,用JS创作元素,并且将元素添加到相应的盒子中,最后定义旋转的函数,定义好后,将函数放置到定时器中,定时一秒。二、制作步骤首先定义相应的盒子<div class="secondBox"></div

2021-05-04 19:09:47 4263 6

原创 CSS特效——蛇形边框

CSS特效——蛇形边框一、设计思路先设置好基本的轮廓,之后通过背景图片设置成两半颜色,再设置,鼠标经过之后的变色,最后设置一下动画,注意时间的推迟。二、详细步骤初始化和基本框架<div class="outbox"> <div class="inbox"> HANDSOME <span class="borders"></span> <span class=

2021-04-28 14:32:48 728

原创 CSS特效——倒影加载

CSS特效——倒影加载文章目录CSS特效——倒影加载一、具体思路二、步骤代码1、初始化和HTML2、设置大盒子3、设置大div和伪元素4、设置小div和伪元素5、设置动画6、设置文字三、全部代码1、HTML2、CSS四、知识点1、-webkit-box-reflect2、 linear-gradient()3、box-shadow五、展示图一、具体思路和往常一样,我们先做一个大盒子来包裹项目。之后初始化,接下来定义一个span,一个包含div的div,用div和他的伪元素制作出圆环的效果,加上定位,

2021-04-27 12:02:56 306

原创 css特效——音波加载

音波加载文章目录音波加载一、搭建思路二、步骤代码style="--num:1" 对于这个不懂的话下面有讲解。定义一个先下后上的动画三、CSS函数var()四、效果展示接上一篇的内容一、搭建思路首先,造一个大的盒子outbox,接着往里面填充10个小盒子span。设置他们的布局,先让大盒子绕X轴旋转一定的角度,达到斜俯视的效果,更像3D.接着,将小盒子按顺序缩小,做成套环的样子,最后,设置动画效果,让每个小的盒子 都按向上后下的动画动起来,在按顺序延迟一定的秒数。这样就成了联动效果。二、步

2021-04-26 20:10:07 649

原创 CSS特效——图片分层悬停

CSS特效——图片分层悬停为了实现以后可以直接拿来使用,这里就把他做成模块了。文章目录CSS特效——图片分层悬停一、制作思路二、相关步骤三、完整代码四、效果展示一、制作思路​首先是一个大盒子来包裹所有的内容.outbox,在设置一个包裹img的盒子.imgbox,里面放置所有的img,为了好看在加上一个span,来体现更好的过度。其次,将所有的img叠加到一起,将所有的样式设置好。最后就是动画了,当鼠标经过最外层大盒子时,先将imgbox绕X,Z轴旋转,达到平面到立体的过程,再将每个img沿各个轴移

2021-04-25 14:31:32 395

空空如也

空空如也

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

TA关注的人

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