自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bloger博客

更新博客描述

  • 博客(80)
  • 收藏
  • 关注

原创 chrome crx插件的加载方式

如果直接导入出错,就将 .crx 后缀改为 .zip 后缀,然后解压,再在 chrome://extensions 页面选择 加载已解压的程序 即可

2022-03-27 17:49:44 448

原创 typora快捷键

一:菜单栏文件:alt+F编辑:alt+E段落:alt+P格式:alt+O视图:alt+V主题:alt+T帮助:alt+H二:文件新建:Ctrl+N新建窗口:Ctrl+Shift+N打开:Ctrl+O快速打开:Ctrl+P保存:Ctrl+S另存为:Ctrl+Shift+S偏好:Ctrl+,关闭:Ctrl+W三:编辑撤销:Ctrl+Z重做:Ctrl+Y剪切:C...

2021-06-12 09:47:20 127

原创 Chrome修改网页背景基色

Chrome修改网页背景基色步骤下载 stylelist 插件,官方应用店下架了,可以去 Chrome插件网下Chrome插件网下载后按照Chrome插件网的离线安装插件会报错提示“程序包无效”,解决办法如下:找到对应的插件.crx 文件,将其后缀改为 .zip将其解压缩得到一个文件夹,忽略过程中的报错将解压得到的文件夹中的_metadata 文件夹名改为meta,即去掉...

2020-11-17 09:49:02 436

原创 autohotkey onenote快捷键配置(待完善)

autohotkey onenote快捷键配置(待完善)介绍安装语法完整程序!z:: Click 218,85 left;黑色细笔Return!x:: Click 273,85 left;红色细笔Return!c:: Click 324,85 left;蓝色细笔Return!v:: Click 485,85 left;黄色细笔Return...

2020-11-17 09:45:50 427 1

原创 Latex 、MathType使用记录

功能:长上划线语法:\overline {(A \cup B)}效果:功能:长等号语法:xlongequal[长等号下面的内容]{上面的内容}效果:如 A\xlongequal[下面的内容]{上面的内容}B功能:空格语法:\(右斜杠+空格)...

2020-06-12 17:10:47 223

原创 MathType输入变量名与预置语法冲突的解决办法

问题描述本来想打如下一条公式:上图图中support()是一个函数,support是自定义的函数名。但是在MathType6.9中输入时,出现了如下情况:由于 sup 是预置的下标语法,所以打 support 时会被强行自动将sup 和port 分开。可能是因为搜索关键词用得不对,在网上没找到解决方案。解决方案最后发现可以通过故意输入干扰字母来阻止自动中断,之后再把干扰字母删掉即可...

2020-02-15 01:18:09 636

原创 MathType输入变量名与预置语法冲突的解决办法

问题描述本来想打如下一条公式:上图图中support()是一个函数,support是自定义的函数名。但是在MathType6.9中输入时,出现了如下情况:由于 sup 是预置的下标语法,所以打 support 时会被强行自动将sup 和port 分开。可能是因为搜索关键词用得不对,在网上没找到解决方案。解决方案最后发现可以通过故意输入干扰字母...

2020-02-15 01:16:23 200

原创 北京工业大学2019年软件学院朱娜斐编译原理试卷考题回忆

包含绝大部分的题目,有4分的选择题想不起来了...今年是朱老师第一年教这门课,明天会不会沿用今年的题说不准...说到底其实还是建议全面复习的好,考前突击不可靠,好好学习是王道。能力增长最重要,否则求职老泪掉。考试题型选择题 2分 x5简答题 5分 x 4分析题+计算题 15分 x2+20分x2选择题第一个编译器是?(Fortran编译器)有限状态自动机、正...

2019-07-18 21:23:51 1767 4

原创 “口袋小食” web 商城项目-栏目简介

背景大三的暑假学校安排了去中软国际昌平校区做项目,在两周时间内开发一个叫"口袋小食"的web商城,当然这个项目不会投入实际使用, 只是用来练手的...前端的静态页面和数据库表大部分是老师已经给好的,对前端的修改主要体现在添加了 thymeleaf 将静态页面转为动态页面,也适当修改了下数据库表以更适合我们的需求人员分工我们是一个三人小团队,另外两位同学统一了开发环境、数据库...

2019-07-18 20:37:30 320

原创 “口袋小食”web商城后台开发问题与解决方案记录

知识点1:thymeleaf传来的都是String类型,转为int类型的java语法如下int user_id = Integer.parseInt(request.getParameter("user_id"));知识点2:如果前端的<input> 标签用了diasbled ,则该输入框的内容不仅前端无法修改,提交表单时也无法传值到 controller 层如...

2019-07-17 22:58:12 210

原创 让 <iframe> 跳转的页面在整个窗口(父框架)中打开

问题描述因为网页头部header(包含导航栏和搜索框) 在很多网页都重复,所以单独写为一个header.html 文件,然后在需要出现的各页面用<iframe> 引入。header.html 里包含搜索框,搜索并经服务器跳转返回后只在当前限定了大小的<iframe> 区域打开,而不是整个页面。解决误区看到别的教程是能通过获取刷新后页面的地址然后传递给父...

2019-07-17 22:56:10 2512 1

原创 spring boot +thymeleaf 详细的前后端数据打通讲解与示例-以商城的搜索功能为例

需求描述从前端搜索框输入商品搜索关键词,查询数据库是否有对应商品,有则跳转到搜索页并展示数据传递流程概览与技术简介:【前端>>后端】 从前端获取关键字并查询数据库前端搜索框键入关键词<form> 表单里用<input>标签获取输入, <input> 通过 name 属性定位控制层 controller 得...

2019-07-17 22:55:57 739

原创 添加 “表单提交时检查” 功能-遇到的问题及解决

实现 “点击表单外的按钮提交表单” 功能问题描述老师给的 注册 html 文件里 提交按钮<input> 是放在表单 <form> 外面的,如果将之挪到 <form> 里面样式会错乱,而老师给的样式文件牵一发而动全身,所以打算不动 <input> 的位置,而是用 js 实现 "点击表单外的按钮<input> 提交表单&...

2019-07-17 22:55:48 509

原创 Spring boot+thymeleaf 用户登录功能前后端全流程实现

概述包括从数据库、实体层、数据操作层、服务层、控制层、视图层全流程打通实现实体类-数据传输载体:属性和字段对应编写Dao层(数据操作层) 方法:-确定表 >> 确定操作(增删改查) >> 确定sql >> 建立方法确定表:user确定操作:查 select确定sql:select *cfrom tb_user where us...

2019-07-17 22:52:55 1720

原创 Sprintg Boot + thymeleaf传递数据

后台传递数据在controller 层里的函数参数列表里添加(Model model) 参数在对应的 controller 函数里添加 model 变量的参数和参数值model.addAttribute("errorInfo","用户名或密码错误");前端html 页面使用数据<span th:text="${errorInfo}"></s...

2019-07-17 22:52:45 189

原创 朱娜斐编译原理复习笔记-北京工业大学软件学院

朱娜婓编译原理学习笔记说明笔记大部分内容来自参考资料[1], 看了B站上中科大华保健老师的编译原理课视频(参考资料[2]),补充完善了DFA的代码表示、Hopcroft 算法、文法重写、LL(1)算法、LR算法等内容有许多知识是结合了自己的理解进行整理,所以可能会有错误之处再往后因为时间问题就有点烂尾了...文章末尾有北京工业大学2019年软件学院编译原理的考题回忆及朱...

2019-06-13 18:37:55 3253 2

原创 3.11 堆的概念及堆排序思路

Chapter3: 更好的查找与排序算法11. 堆的概念及堆排序[1] 图解排序算法(三)之堆排序 讲得很好,这里相当于写个精简大纲版并将java代码转换为C++代码堆的相关概念堆排序概述堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。堆的概念堆是具有以下...

2019-03-23 16:26:08 255

原创 3.10 基础学习:树、二叉树

Chapter3: 更好的查找与排序算法10. 基础学习:树、二叉树用数组来表示一棵树结构分为逻辑结构和物理结构(或存储结构)存储结构只有两种:顺序存储和和链式存储用数组来表示1棵树,可以按照从上到下,从左到右的顺序给树编号,这样结点i 的左子结点下标为 2i+1 , 右子结点下标为 2i+2 ,如果其范围超出了数组长度,说明它没有对应的子结点;其父结点为 [(i-1)/...

2019-03-23 16:25:22 67

原创 3.9 两道关于逆序对的题目

Chapter3: 更好的查找与排序算法9. 用归并排序思想解两道关于逆序对的题目合并有序数组题目给定两个排序后的数组A和B,其中A的末端有足够的缓冲空间容纳B。编写一个方法,将B合并入A并排序算法基本思想其实就是归并排序,只不过不是用额外的空间,空间已经给你了设置一个指针pc 指数组A的第 arrALen+arrBlen 个元素,即A[arrALen+arrBL...

2019-03-23 16:23:48 217

原创 3.8 实践:最小可用id是多少-求乱序数组中缺失的最小数字

Chapter3: 更好的查找与排序算法8. 实践:最小可用id是多少-求乱序数组中缺失的最小数字问题在乱序的非负数组中找到最小的可分配id(从1开始编号),数据量1000000。意思就是求一个非负乱序数组中缺失的最小数字,因为id不能重复算法解法1:先排好序O(nlgn)基本思想先将数组排好序,然后循环比较输出第一个缺失的数解法2:用分区的思想基本思想在数组...

2019-03-23 16:22:59 328

原创 3.7 实战解题:哪个数字超过了一半

Chapter3: 更好的查找与排序算法7. 实战解题:哪个数字重复数超过了数组一半长度?题目数组中有一个数字出现的次数超过了数组长度的一半,找出这个数字。算法分析:因为这个数字k出现次数超过了N/2,注意利用这个特性这意味着:如果数组排好序的话,第N/2个元素一定是这个数字这个数k的出现次数比所有其它元素加起来的还要多。解法1思路hash统计,hashma...

2019-03-23 16:22:36 257

原创 3.6 最快效率求出乱序数组中第k小的数

Chapter3: 更好的查找与排序算法6. 最快效率求出乱序数组中第k小的数题目以尽量高的效率求一个乱序数组中第k小的元素算法算法1用快排先将数组排序,然后直接找第k个元素,时间复杂度为O(nlgn)算法2思路用分区查找的思想,同样有点排序的感觉,毕竟分区就是将小于主元的元素放左边,大于主元的元素放右边。与排序完再查找不同的是:这个思路不用将所有元素排序完...

2019-03-23 16:22:05 334

原创 3.5 题解-调整数组顺序使奇数在做偶数在右

Chapter3: 更好的查找与排序算法5. 题解:调整数组顺序使奇数在左偶数在右题目输入一个整数数组,调整数组中数字的顺序,使得所有奇数为域数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)上一节提到了在解题时想出算法的方法论,这里用到的就是模式匹配法,用快速排序和归并排序的思想用快速排序的思想基本思想设置两个指针left 和 right ,le...

2019-03-23 16:21:38 315

原创 3.4 思考算法的方法论

Chapter3: 更好的查找与排序算法4. 思考算法的方法论思考算法的方法论举例归纳法先列举一些具体的例子,看看能否发现其中的一般规则。模式匹配法将现有问题与相似问题作比较,看看能否通过修改相关问题的解法来解决新问题。简化推广法首先修改某个约束条件,比如数据类型或数据量,然后解决这个简化后的问题,之后再将这个问题进行推广,调整简化问题的解决方案来解决原问题。简单...

2019-03-23 16:21:17 179

原创 3.3 分治模式的完美诠释:归并排序

Chapter3: 更好的查找与排序算法3. 分治模式的完美诠释:归并排序1. 基本思想对于一次递归的调用来说划分取中间坐标,将原数组划分为两部分分别递归对左右数组进行排序,该层调用的结果为左边数组有序,右边数组有序,但是左边数组的元素不一定比右边数组的小,如 [1,3,4,6,2,4,6,8]合并比如对于数组arr=[1,5,3,7,2,6,8,4]...

2019-03-23 16:20:20 155

原创 3.2 快速排序算法

Chapter3: 更好的查找与排序算法2. 快速排序算法1. 什么是快速排序算法分解数组 A[p..r] 被划分为两个子数组 A[p...q-1] 和 A[q+1,r] , 使得 A[q] 为大小居中的数,左侧 A[p..q-1] 中的每个元素都 <= 它, 而右侧 A[q+1,r] 中的每个元素都 >= 它。其中计算下标 q 也是划分过程的一部分。...

2019-03-23 16:15:59 232

原创 3.1 分治法介绍及关键点解析

Chapter3: 更好的查找与排序算法1. 分治法介绍及关键点解析什么是分治法基本思想将原问题划分为若干个规模较小而结构与原问题一致的子问题,递归地解决这些问题,然后再合并其结果,就得到原问题的解优点容易确定运行时间每一层递归上都有的3个步骤分解:将原问题分解成一系列子问题解决:递归地解各子问题,若子问题足够小,则直接有解合并:将子问题的结果合并成原问题的解...

2019-03-23 16:14:37 206

原创 2.13 实战:快速设计一个高效的求a的n次幂的算法

Chapter2: 时间复杂度分析、递归、查找与排序13. 实战:快速设计一个高效的求a的n次幂的算法问题设计一个高效的求a的n次幂的算法算法设计思路经验丰富的话可能一下子就想出了,但是刚开始都是设计出一般的算法,然后再考虑优化的比如说求a的n次幂,很容易就想到了用for循环,时间复杂度为O(n),既然要设计一个更高效的方法,O(n)往下就是O(log(n))了,或...

2019-03-23 16:14:06 571

原创 2.12 题目详解:找出最长连续递增子序列

Chapter2: 时间复杂度分析、递归、查找与排序12. 题目详解:找出最长连续递增子序列题目给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)。输入格式:输入第1行给出正整数n(≤10^5);第2行给出n个整数,其间以空格分隔。输出格式:返回最大的连续递...

2019-03-22 14:27:57 1298

原创 2.11 题目详解:在有空字符串中的有序字符串数组中查找

Chapter2: 时间复杂度分析、递归、查找与排序11. 题目详解:在有空字符串中的有序字符串数组中查找题目有个排序后的字符串数组,其中散布着一些空字符串,编写一个方法,找出给定字符串(肯定不是空字符串)的索引算法其实就是用二分查找,本身字符串数组就是有序的,与查找数字的不同之处就在于字符串的大小比较方式不一样罢了,还有就是这里还有空字符串,所以选取mid时,如果遇到空...

2019-03-22 14:27:13 313 1

原创 2.10 解题实战:旋转数组的最小数字(改造二分法)

Chapter2: 时间复杂度分析、递归、查找与排序10. 解题实战:旋转数组中的最小数字(改造二分法)题目把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1算法显然要利用题目的有序性来提升算法性能,自然而然地就想到...

2019-03-22 14:26:35 109

原创 2.9 解题实战:小白上楼梯(递归设计)

Chapter2: 时间复杂度分析、递归、查找与排序9. 解题实战:小白上楼梯题目小白正在上楼梯,楼梯有n阶台阶,小白一次一次可以上1阶,2阶或3阶,实现一个方法,计算小白有多少种走完楼梯的方式。算法递归的解题思路:找重复因为一次可以上1阶,2阶或3阶,要计算到达n阶的方式,为到达n-1,n-2,n-3阶的方式之和到达n-1阶之后,只有一种方式到达n阶,即跨1...

2019-03-22 14:25:57 351

原创 2.8 分析十种排序算法的稳定性

Chapter2: 查找与排序8. 分析十种排序算法的稳定性1. 什么是算法的稳定性稳定如果a=b, a原来在b前面, 排序之后a仍然在b前面不稳定如果a=b, a原来在b前面, 排序之后a可能在b之后2. 十种排序算法的稳定性堆排序、快速排序、希尔排序、直接选择排序不是稳定的排序算法;比如希尔排序,由于前面进行的是分组的插入排序,两个相等的值可能...

2019-03-22 14:25:10 183

原创 2.7 希尔排序的性能分析

Chapter2: 时间复杂度分析、递归、查找与排序7. 希尔排序的性能分析希尔排序的性能无法准确量化,跟输入的数据有很大关系在实际应用中也不会用它,因为十分不稳定,虽然比传统的插入排序快,但比快速排序等慢其时间复杂度介于O(nlogn) 到 O(n^2) 之间只是说学习一下它的思想,学习时间复杂度分析的技巧,有时候虽然不能准确衡量一个算法的时间复杂度,但是可以通过确定其...

2019-03-22 14:24:27 344

原创 2.6 冒泡排序、插入排序、选择排序

Chapter2: 时间复杂度分析、递归、查找与排序6. 冒泡排序、插入排序、选择排序0. 时间复杂度这三大经典排序算法的时间复杂度都是 O() , 在数据规模大的时候时间代价差别不大,在数据规模小的时候,会发现冒泡排序所耗费的时间大概是其他O() 算法的两倍,是因为冒泡排序交换了两次数,所以要乘个21. 冒泡排序基本思想元素两两比较,将最大/最小元素交换到队尾从无序...

2019-03-22 14:23:47 135

原创 2.5 算法时间复杂度评估

Chapter2: 时间复杂度分析、递归、查找与排序5. 算法时间复杂度评估大O表示法评估算法复杂度什么是大O表示法所谓的时间复杂度,实际上就是一个输入规模 n与函数运行时间f(n) 的关系,比如 O(n^2) 就表示当处理100个输入时,要进行10000次访问/计算操作, 再乘以单次运算需要的单位时间即得到算法运行时间。大O表示法,忽略常数项、低阶项等非主体部分,如 f...

2019-03-22 14:14:31 378

原创 2.4 希尔排序

Chapter2: 时间复杂度分析、递归、查找与排序4. 希尔排序1. 什么是希尔排序概念解释希尔排序也是一种插入排序,他是简单插入排序经过改进之后的一个更高效的版本,也称缩小增量排序。希尔排序实质上就是对待排序序列进行分组,间隔一定距离进行局部的插入排序,不断缩小元素的间隔距离、减少分组,最终进行全部元素的插入排序。因为之前进行了局部的插入排序,所以在最后对全部元素进行...

2019-03-22 14:13:48 75

原创 2.3 二分查找的递归与非递归实现

Chapter2: 时间复杂度分析、递归、查找与排序3. 二分查找的递归与非递归实现二分查找即折半查找,为查找算法的一种,思路为先将数组排序,再通过不断与中值比较将查找范围减半,最终找到目标一个小技巧:mid=(min+max)/2; 等价于 min+(max-min)/2 ,这样写能防止min+max溢出; 写为位运算 min=min+(max-min)>>1...

2019-03-22 14:12:36 229

原创 2.2 递归经典问题:汉诺塔问题

Chapter2: 时间复杂度分析、递归、查找与排序2. 递归经典问题:汉诺塔问题问题有A,B,C三个柱子,在A柱上有1N个圆盘,将1N个圆盘从A柱移动到C柱,移动过程中始终保持小盘在上,大盘在下算法递归思路一次递归调用执行了以下操作:先将顶上的 N-1 个盘子从A柱移到B柱上,借助C柱再将底下最大的盘子从A柱移到C柱上将这 N-1 个盘子从B柱移到C柱上,借助...

2019-03-22 14:11:20 309

原创 2.1 递归

Chapter2: 时间复杂度分析、递归、查找与排序1. 递归1. 什么是递归表现:在函数内部调用函数本身应用递归的问题特征:一个问题能够划分为更小规模的子问题求解,通过求解更小规模的子问题最终得到问题的答案。更具体地来说,即在本次函数调用中执行一小部分任务,然后传递一个变化了的参数,调用该函数本身执行接下来的任务。组成:函数内的自我调用出口条件设计经验:...

2019-03-22 14:10:45 79

空空如也

空空如也

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

TA关注的人

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