自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 thymeleaf初体验

首先添加依赖项:添加配置:Spring Boot默认存放模板页面的路径在src/main/resources/templatesThymeleaf默认的页面文件后缀是.html。在MVC的开发过程中,我们经常需要通过Controller将数据传递到页面中,让页面进行动态展示,所以先在controller下新增ThymeleafController类:html文件如下:在h2标签中有th:text属性,这个就是thymeleaf的语法,它表示显示一个普通的文本信息。另外,在th:ut

2020-10-12 16:51:27 124

原创 设置IDEA热部署

一、POM文件添加依赖项:二、设置IDEA的编译选项(在Preferences中进行设置):三、快捷键(win:shift+ctrl+alt+/ mac:shift+command+alt+/)打开系统面板,在Registry…中选择compiler.automake.allow.when.app.running,完成后重启IDEA:重启IDEA!OK!!...

2020-10-12 16:46:52 166

原创 JUnit入门

JUnit——Java单元测试框架促进“先写测试后编码”理念。一、特点:JUnit 是一个开放的资源框架,用于编写和运行测试。提供注释来识别测试方法。@test表示将一个普通方法修饰成一个测试。提供断言来测试预期结果。提供测试运行来运行测试。JUnit 测试允许你编写代码更快,并能提高质量。JUnit 在一个条中显示进度。如果运行良好则是绿色;如果运行失败,则变成红色。根据测试需要选择启动类。Spring Boot中使用Junit:使用前需引入相关依赖:加入相关注解:常用单元

2020-10-12 16:43:28 154

原创 MVC模式的好处以及MVC工程初体验

一、MVC模式介绍模型Model:业务逻辑层,业务流程/状态的处理以及数据模型的制定。视图View:表示层,与用户实现交互的界面,视图上数据的采集和处理以及用户请求的处理。不能有任何业务逻辑。控制层Controller:控制层,控制业务流程,让Model和View协调工作。可以看作是一个分发器,不做数据判断、处理,完成所有的请求、流程控制。MVC的优势:数据和显示分离,有利于松耦合方法的实现(详见松耦合的理解和第一问)。松耦合的理解:软件设计中的“耦合”指,两个功能函数之间的依赖程度。“松耦合

2020-10-12 16:35:13 288

原创 postman端口测试的使用方法

如图:

2020-10-12 16:23:29 1844

原创 mvc项目打包、运行、终止的命令

打包命令:mvn install因为在新建项目时选择的是jar包,所以打包后也是jar包。运行命令:java -jar target/demo1-0.0.1-SNAPSHOT.jar(注意路径:在target下)终止命令:先用jps看一下正在运行的包的进程id号,通过kill -9 +端口号即可终止进程。修改端口号:双击recourse中的application.properties,输入server.port=8088。小tips:在一个类中,右击选择Generated选择Constructor

2020-10-12 16:22:08 494

原创 Spring Boot注解及初体验遇到的一些问题

1.@SpringBootApplication:是Sprnig Boot项目的核心注解,目的是开启自动配置。会自动import org.springframework.boot.autoconfigure.SpringBootApplication;它包含三个注解:@SpringBootConfiguration是来声明当前类是SpringBoot应用的配置类,项目中只能有一个。所以一般我们无需自己添加。@EnableAutoConfiguration开启自动配置,告诉SpringBoot基于所添

2020-10-12 16:19:04 89

原创 Web课程总结

2019-2020-2学期《Web程序设计》课程总结1 课程知识点总结1.1页面布局编程单元CSS背景设置:可以使用 background-color 属性为元素设置背景色。这个属性接受任何合法的颜色值。背景不能被继承。图像背景:要把图像放入背景,需要使用 background-image 属性。background-image 属性的默认值是 none,表示背景上没有放置任何图像。如果需要设置一个背景图像,必须为这个属性设置一个 URL 值。颜色背景:CSS 允许应用纯色作为背景,参数可以

2020-06-09 21:28:04 2353

原创 算法读书笔记

《迷茫的旅行商》——一个无处不在的计算机算法问题在图书馆遇到这本书的时候,我被它的标题吸引了。旅行商和算法之间有什么千丝万缕的关系呢?它们又会擦出什么样的火花呢?其实,这本书是在研究一名旅行商如果要拜访一张城市列表中的所有城市,每座城市只去一次,最后回到出发地,怎么走才是最短路线的问题。这就是旅行商问题。通过这本书,William J. Cook将带领读者踏上一场数学之旅,跟随旅行商的脚步,从19世纪初爱尔兰数学家W. R. Hamilton最初定义该问题开始,一路奔向当今最前沿、最顶尖的解题尝试。我

2020-06-02 14:12:58 304

原创 圆排列问题

一、问题问题描述:给定n个圆的半径序列,将它们放到矩形框中,各圆与矩形底边相切,求具有最小排列长度的圆排列。二、解析首先,已知圆的个数n以及记录各圆半径的数组r[i],i=1~n ,记录各圆圆心横坐标的数组x[i],i=1~n。要记录最短排列长度minlen,最终求出排列顺序。要注意,只要大小合适,目标圆就有可能与排列中的任意一个圆相切。要求x[n]时,要从前往后的一一比较,先得到x[1]+a1的值,再得到x[2]+a2的值……一直到x[n-1]+an-1的值,与上一次的值相比较,若距离更大则更新,

2020-05-30 12:53:05 820

原创 《算法分析与设计》-作业12 图的m着色问题

一、问题问题描述:图的m着色问题。给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色。给出所有可能的着色方案;如果不存在,则回答“NO”。二、解析首先,使用邻接矩阵存储无向连通图;其次,明确color数组代表的含义:color[n],大小为n,下标肯定代表顶点,里面的值代表这个顶点放的是哪种颜色。还要判断当前顶点和哪些顶点有着色冲突,若有return false;否则return true。将颜色初始化,遍历搜索下一个颜色。根据着色情况

2020-05-26 22:05:08 524

原创 《算法分析与设计》 -作业11 最优前缀码

一、问题给定字符集C={x1,x2,…,xn}和每个字符集的频率f(x1),求关于C的一个最优前缀码。二、解析构造最优前缀码的贪心算法就是哈夫曼算法。根据各个字符的权值建立一颗哈夫曼树,求得每个字符的哈夫曼编码,有了每个字符的哈夫曼编码,我们就可以制作一个该字符集的哈夫曼编码表。有了字符集的哈夫曼编码表之后,对数据文件的编码过程就是依次读人文件中的字符ch,在哈夫曼编码表中找到此字符,将字符ch转换为对应的哈夫曼编码串。三、设计void buildHuffmanTree(int n){ f

2020-05-13 14:38:21 349

原创 《算法分析与设计》-作业10 相容问题

一、问题问题描述:有n项活动申请使用同一个地点,每项活动有一个开始时间和一个截止时间。如果任何两项活动不能同时举行,问如何选择这些活动,从而使得被安排的活动数量达到最多。问题建模:设S为活动的集合,s和f分别为活动的开始和截止时间。定义:活动i和j相容。求S最大的两两相容的活动子集A。把活动按照截止时间从小到大排序,使得f1<=f2<=…<=fn,然后从前往后挑选,只...

2020-04-28 19:46:40 246

原创 《算法分析与设计》-作业9 LCS算法

问题给定两个字符串,求解这两个字符串的最长公共子序列(Longest Common Sequence)。比如字符串1:BDCABA;字符串2:ABCBDAB则这两个字符串的最长公共子序列长度为4,最长公共子序列是:BCBA。解析首先要分清楚:子串:表示连续的一串字符。子序列:表示不连续的一串字符。S1的最后一个元素与s2的最后一个元素相同,这说明该元素一定位于公共子序列中。因...

2020-04-21 21:29:25 228

原创 《算法分析与设计》-作业8 矩阵链乘法

问题设A1,A2,……An为n个矩阵的序列给定一个n个矩阵的序列,其中Ai为Pi=1*P阶矩阵,这个矩阵链的输入用向量P=<P0,P1,P2,…,Pn>给出,确定一种乘法次序,使得基本运算的总次数达到最小。解析Ai…j:表示矩阵链相乘的子问题Ai,Ai+1…Aj; M[i…j]:表示得到乘积Ai…j所用的最少基本运算次数;假定最后一次相乘发生在矩阵链Ai…kAk+1…j之间m...

2020-04-15 12:11:50 300

原创 《算法分析与设计》-作业7 投资问题

问题设m元钱,n项投资.效益函数fi(x)表示将x元投入第i个项目所产生的效益, i=1,2,3,…,n。问:如何分配这m元钱,使得投资的总效益最高?解析递推公式。设Fk(x)表示x万元投给前k个项目的最大收益,k=1,2,…,n, x=1,2,…,m我们可以得到递推方程和边界条件:递推方程:Fk(x)=max0≤xk≤x{fk(xk)+Fk−1(x−xk)},k=2,3,…,n边界...

2020-04-07 21:56:50 1109

原创 《算法分析与设计》-作业六 选取第k小元素

问题给出一个数组,求数组中第k小的元素。解析首先,随机在数组中选择一个数作为划分值。然后,进行快排,将小于划分值的数放到数组左边,等于划分值的数放到数组中间,大于的放到数组右边,然后判断k与等于划分值区域的相对关系,如果k正好在等于区域,那么数组第k小的数就是划分值,如果k在区域的左边,那么我们递归对左边再进行上述过程,右边也一样。在选取划分值时:(1)我们将数组每5个相邻的数分成一组...

2020-04-01 20:14:10 510

原创 《算法分析与设计》-作业五 最近对问题

问题最近对问题要求在包含有n个点的集合S中,找出距离最近的两个点。假设 p1(x1,y1),p2(x2,y2),……,pn(xn,yn)是平面的n个点。解析1、当n<=3时,问题简化,考虑蛮力法。套用公式:2、当n>3时,考虑分治法。利用点集在x轴上的中位数m,在此处做垂线,将集合分成两个子集,每个子集中的点数大致都为n/2。这样最近点对会出现两种情况:在一个子集中和在两个子...

2020-03-24 20:08:08 724

原创 《算法分析与实践》-作业4 二分归并排序

题目使用二分归并排序,对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k。解析该算法分为两部分:Merge_Sort(int *a, int *temp,int start,int mid,int end)d)Sort(int *a, int *temp,int start,int end)设计核心代码:void Merge_Sort(int *a, int *te...

2020-03-17 21:26:56 496

原创 《算法分析与实践》-作业3 顺序查找与二分查找

在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0。一、顺序查找顺序查找顾名思义就是按照顺序一个一个找。就好像拿到一刀试卷,你要从中找到自己的,那么你就要一张一张翻下去,直到找到自己的试卷。在本题中,我们按照下标一个一个找。代码:void search(int x){ int j=0,i; for(i=1;i<=n...

2020-03-10 18:54:37 287

原创 《算法分析与实践》-作业2 Floyd算法和Dijkstra算法

Floyd算法和Dijkstra算法是研究最短路径问题的经典算法。本次实验将通过两道例题探究两种算法的操作过程并编写算法。题目1用Floyd算法求解下图各个顶点的最短距离。写出Floyd算法的伪代码和给出距离矩阵(顶点之间的最短距离矩阵)解析:(1)首先初始化点与点之间的距离,用邻接矩阵存储。1234102642∞03∞37∞0...

2020-03-06 17:28:33 311

原创 《算法分析与实践》-作业1 最小生成树

实验目的图的最小生成树有两种最基本的生成方式,俗称“加点法”和“加边法”,对应了Prim算法和Kruskal算法。本次实验将探究两种算法的操作过程并编写算法。解析Prim算法:首先选一个起点,在其他顶点与起点相连的各路径中找出与权值最小的边,重复这个过程,直到最小生成树生成。(不能构成回路)Kruskal算法:在所有边中只要选择权值最小的,但是不能构成回路。相当于按照权值大小把边排序...

2020-02-27 18:22:24 273

原创 Java中的深拷贝和浅拷贝

一、拷贝复制一个 Java 对象,就是将一个对象的属性拷贝到另一个有着相同类类型的对象中去,主要是为了在新的上下文环境中复用对象的部分或全部数据。在拷贝中,有两种类型的对象拷贝:浅拷贝(Shallow Copy)、深拷贝(Deep Copy)。二、什么是浅拷贝?浅拷贝就是拷贝基本类型的属性、引用类型的属性、栈中的变量以及变量指向堆内存中的对象的指针,但是不拷贝堆内存中的对象。简言之,浅拷...

2019-11-19 17:52:27 163

原创 组合(Composition)与聚合(Aggregation)

一、概念聚合与组合都是一种关联关系,只是额外具有整体-部分的意义。组合:Compositioncontains-a关系。通俗来讲就是,一样东西由另一些小的“零部件”组成。比如,一辆汽车是由发动机等零部件组成的,汽车包含了这些零部件。优点:1.不破坏封装,整体类与局部类之间松耦合,彼此相对独立。2.具有较好的可扩展性。3.支持动态组合。在运行时,整体对象可以选择不同类型的局部对象。...

2019-11-12 16:22:43 1152

原创 Javadoc及其使用

Javadoc及其使用一、定义二、Javadoc的使用常用标记写在类上面的Javadoc第一段:概要描述第二段:详细描述第三段:文档标注写在方法上面的Javadoc命令格式一、定义javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。只要在编写程序时以一套特定的标签作注释,在程序编写完成后,通过Javadoc就可以同时形成程序的...

2019-11-05 19:00:58 257

原创 不同语言的数组声明、赋值、访问

关于C、C++、C#、Java、JavaScript的数组声明、赋值、访问不同的语言在数组的声明、赋值、访问上有着相同点,也有着不同点。在学习过几种语言的数组后,进行了以下整理。C++c++数组的声明并不是一个个单独地进行,比如 n0、n1、…、n99,而是声明一个数组变量,比如 n,然后使用 n[0]、n1、…、n[99] 来代表一个个单独的变量。数组中的特定元素可以通过索引访问。声明数...

2019-09-25 16:19:54 201

原创 Unicode与UTF-8、UTF-16、UTF-32

UnicodeUnicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。起源:因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早出现的ASCII码表就是一种用来表示大小写英文字母、数字和一些符号的统一编码表。但是,如果要表示中文、日语、韩语等,显然一个字节是不...

2019-09-17 18:36:36 1002

原创 关于eclipse的debug

序言在eclipse的使用过程中,debug是一个非常重要的环节。接下来就是关于eclipse的debug。第一步WindowsPreferencesJavaDebug如图:接下来选择屏幕上所需要的选项,可以添加你自己代码库中的部分代码,然后单击Apply。以下是一些常用的按键:F5:表示进入当前方法。F6;表示运行下一行代码。F7:表示退出当前方法。F8:表示继续运行...

2019-09-15 22:34:30 216

原创 eclipse的安装以及hello world的实现

欢迎使用eclipse新的一学期学习新的编程语言。首先要下载一个eclipse。官网可直接下载。除了下载,还要有匹配的编译环境。作为小白,我借鉴了很多人的很多版本:然而……我太难了……但不能放弃!!多番尝试后,它终于成功了!!终于可以打开亲爱的eclipse了!!!!hello world打开了eclipse,我就迫不及待地进行hello world操作。代码:p...

2019-09-03 20:53:41 114

空空如也

空空如也

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

TA关注的人

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