自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 二分查找的实现代码JAVA

> 1.前提: 有已排序数组A (假设已经做好)2.定义左边界L、 右边界R,确定搜索范围,循环执行二分查找(3、4两步)3.获取中间索引 M = Floor((L+R) 1/2)4.中间素索引的值 A[M] 与待搜索的值T进行比较①A[M]==T 表示找到,返回中间索引②A[M]>T, 中间值右侧的其它元素都大于T,无需比较,中间索引左边去找,M- 1设置为右边界,重新查找③A[M]R时

2023-02-25 11:38:46 1086 1

原创 将Springbooot项目部署到云服务器上运行

将Springbooot项目部署到云服务器上,并且运行

2022-10-01 15:51:59 1201 1

原创 把自己的项目上传到github

使用Git把自己的项目上传到github(笔记)Git:一个运行下电脑上的版本控制软件。Github :是基于Git这个版本控制软件打造的网站首先确保下载了Git软件,然后做如下操作。1.在github上创建一个新的仓库,用来放代码等文件,以供浏览下载。点击new新建一个repository(仓库)。在这个例子中仓库名为Myshop,以下都用Myshop仓库作为演示2.复制仓库地址3.在一个文件夹里面,右键选择git bash,输入命令: git clone 你的仓库地址例如:g

2021-12-11 17:57:07 707 1

原创 简单shell命令行解释器的设计与实现

简单shell命令行解释器的设计与实现思路&分析结果代码(linux执行下)思路&分析1.背景知识本实验要使用创建子进程的fork()函数,执行新的命令的exec ()系列函数,通常shell是等待子进程结束后再接受用户新的输入,这可以使用waitpid()函数。2.设计步骤提示:shell的主体就是反复下面的循环过程while(1){接收用户输入的命令行;解析命令行;if(用户命令为内部命令)直接处理;elseif(用户命令为外部命令)创建子进程执行命令;else

2021-07-03 17:34:06 1173

原创 windows命令提示符运行.cpp文件

windows命令行运行.cpp文件配置环境变量启动命令行执行文件配置环境变量首先下载好VC6.0,然后配置环境变量VC6下载链接win7、win10在系统属性-高级-环境变量-用户变量中:1. 编辑PATH增加cl编译器的路径D:\hostd\VC6.0 完整绿色版\VC6.0 完整绿色版\VC98\Bin以及MSPDB60.DLL的路径D:\hostd\VC6.0 完整绿色版\VC6.0 完整绿色版\Common\MSDev98\Bin (注意这里的D:\hostd\VC6.0…\为你的V

2021-06-21 20:20:27 8368 5

原创 网上购物商店java web课程设计

网上购物商店题目以及环境模块介绍数据结构代码总结题目以及环境1.功能要求:1.实现商家入驻、审核、发布2.实现商家登录、商品发布3.实现用户的注册、登录4.实现商品列表、分类展示5.模拟商品购买6.模拟商品发货、用户收货、确认2.运用的工具(环境): eclipse+Tomcat7+MySQL+servlet+EL表达式+smartupload.jar前言:刚开始看着这个一脸懵,不知道怎么写。连servlet这东西的原理,也不太懂。于是找了各种途径去学习,最后在B站看到一个老师讲的课程

2021-06-18 10:24:25 4033 10

原创 汽车尾灯控制电路设计VHDL课程设计

汽车尾灯控制电路设计题目分析代码板载测试题目(1)使用开发板上最左与最右两组指示灯作为汽车尾部左右灯组,使用按键开关作为操控汽车的控制信号。(2)要求:汽车启动时尾灯全亮,持续约1-2秒钟后熄灭,汽车正常行驶时指示灯全灭,右转时最右一组指示灯(八个)向右依次反复循环点亮;左转时最左一组指示灯(八个)向左依次反复循环点亮;刹车时两组灯全亮,熄火时全灭。分析五个功能:启动、熄火、刹车、左转、右转,比较简单,直接上代码吧。代码LIBRARY IEEE;USE ieee.std_logic_11

2021-05-11 17:02:53 5148 4

原创 HTTP:学习笔记二

HTTP协议简单的HTTP协议二级目录简单的HTTP协议1. HTTP协议用于客户端和服务器端之间的通信HTTP协议和TCP/IP协议族内的其他众多的协议相同,用于客户端和服务器之间的通信。请求访问文本或图像等资源的一端称为客户端,而提供资源响应的一 端称为服务器端。2.通过请求和响应的交换达成通信HTTP协议规定,请求从客户端发出,最后服务器端响应该请求并返 回。换句话说,肯定是先从客户端开始建立通信的,服务器端在没有 接收到请求之前不会发送响应。客户端发送给某个 HTTP 服务器端的请求报文

2021-05-09 20:02:35 150 1

原创 出租车计价器设计VHDL

出租车计价器设计题目总体结构分析与设计实现与仿真设计结论与分析小结与心得体会题目题目九:出租车计价器设计(平台实现)★★完成简易出租车计价器设计,选做停车等待计价功能。基本功能:(1)起步8元/3公里,此后2元/公里;(2)里程指示信号为每前进50米一个高电平脉冲,上升沿有效;显示行公里数,精确到0.1公里。(模拟时速40KM/h)(3)前进里程开始之前显示价钱,精确到0.1元;(4)用两个按键分别表示开始行程和结束行程。选做功能:(1)增加一个停车等待/恢复行程按钮,用2个数码管显示等

2021-04-30 10:54:05 10017 17

原创 Web 4-24

Web 4-24实战篇攻防世界——NaNNaNNaNNaN-Batman二级目录攻防世界——NaNNaNNaNNaN-Batman题目:1.附件没有后缀,用记事本打开后发现 script 标签,一个JS代码,不过中间乱码了。然后还是把文件后缀改为了HTML,用浏览器打开,发现代码还是乱的,,,输入一些东西,也没有过多反应。2.还是看不懂,然后把内容部分执行函数eval修改为alert,弹窗显示正常。congratulation,得到3.代码复制,整理。这里可以用一个在线工具,专门整理美化J

2021-04-24 22:33:41 383 3

原创 DVWA—brute force

一、Low级别本次采用burp来完成破解。①拦截②点击Action,发送到Intruder。并点击clear,然后将password=处添加,让其变为变量。③字典破解,Load处添加一个简单字典,开始破解观察长度,只有password不一样。可知密码为:password最后验证,登陆成功。其实这个级别也可以用sql注入来破解。如输入账户为:admin’ or ‘1’='1,密码任意。二、Medium级别①字典破解,这个级别同样可以用一些字典,轻松破解。和Low级别类似。密码

2021-04-24 21:14:52 139

原创 HTTP:学习笔记一

HTTP网络基础 TCP/IP二级目录三级目录网络基础 TCP/IP协议(protocol):计算机与网络设备要相互通信,双方就必须基于相同的方法。比如, 如何探测到通信目标、由哪一边先发起通信、使用哪种语言进行通 信、怎样结束通信等规则都需要事先确定。不同的硬件、操作系统之 间的通信,所有的这一切都需要一种规则。而我们就把这种规则称为 协议(protocol)。为了理解 HTTP,我们有必要事先了解一下 TCP/IP 协议族。 通常使用的网络(包括互联网)是在 TCP/IP 协议族的基础上运作

2021-04-11 19:44:01 137 2

原创 DVWA——文件包含

File Inclusion学习文件包含简介实战:DVWA——文件包含文件包含简介一、文件包含简介:服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这会为开发者节省大量的时间。这意味着您可以创建供所有网页引用的标准页眉或菜单文件。当页眉需要更新时,您只更新一个包含文件就可以了,或者当您向网站添加一张新页面时,仅仅需要修改一下菜单文件(而不是更新所有网页中的链接)。二、文件包含函数:PHP中文件包含函数有以下四种:require()、require_on

2021-03-21 21:13:15 3028

转载 跨站请求伪造(CSRF)

跨站请求伪造(CSRF)学习笔记什么是跨站请求伪造攻击细节防御措施什么是跨站请求伪造跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本(XSS)相比,XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。可以这样理解CSRF:攻击者借用用户的名义

2021-03-21 19:46:31 280

原创 DVWA——Command Injection

DVWA——Command Injection<学习笔记>@[TOC]DVWA——Command Injection什么是Command Injection?一、什么是Command Injection?二、使用步骤总结

2021-03-17 15:23:26 1832

原创 DVWA-SQL注入(全级别)

一、SQL注入概念SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。二、手工注入常规思路1.判断是否存在注入,注入是字符型还是数字型2.猜解SQL查询语句中的字段数3.确定回显位置4.获取当前数据库5.获取数据库中的表6.获取表中的字段名7.得到数据...

2021-02-08 12:47:03 6072 3

原创 Web学习21-1

攻防世界一.模板注入题目:Web_python_template_injection知识点:Python SSTI,404模板注入这一周听了一次关于SSTI的课,于是就在攻防世界里试了试,最终做出来了,不过是在看了题解的前提下…**收获**更加了解Python SSTI,404模板注入,懂了一些其中的原理.特别是有一个题解,给了我很大的帮助....

2021-01-31 22:55:44 244 2

原创 PHP学习

PHP学习与评论区制作为了更好地了解web,这一周我重新学习了一下php、html、css等。为了有更好的效果,我通过做一个评论区作品来学习。最终效果如下:输入:小智:我是真新镇的小智,今年10岁,我的梦想是成为神奇宝贝大师。结果成功,如下收获:通过这个过程我更加了解从网页到代码,从网页到数据库这样一个过程,还有POST与GET请求。对于PHP,CSS,HTML也更加熟悉,更能理解每一行代码的作用了。*#代码*(文件一)boosrtap.php://网页布局等<?php

2021-01-31 00:27:46 592 5

原创 Java执行代码(接上篇)

Java执行代码:package fisrter;import javax.swing.*;import javax.swing.table.DefaultTableModel;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.ItemEvent;import java.awt.event.ItemListener;i

2020-12-21 17:13:00 601

原创 使用JAVA连接Mysql数据库,并完成相关操作

Java 访问 MySQL通过使用JDBC让JAVA程序连接到数据库,并完成增删改查等操作。大致步骤:1、Mysql与eclipse、jdk等的下载(以及环境变量配置等,这里不做详细说明)。2、将mysql-connector-java-5.1.8-bin.jar添加到eclipse、将mssql-jdbc-6.2.2.jre7.jar 或 mssql-jdbc-6.2.2.jre8.jar添加到eclipse项目。(注意是与要连接数据库的JAVA程序同一个项目)。3、创建要连接的数据库与表。4

2020-12-21 17:11:07 4161

原创 计算机信息安全认识实习报告

一、实习目的认知实习,通过了解公司的相关信息和技术发展以及招聘情况,让我们了解我们信息安全专业在未来的发展趋势,使我们了解本专业相关领域的发展现状,了解到计算机相关领域的发展现状和最新科研成果,以及在生产科研中的应用。让我们更好地明白我们接下来要学什么,不断地去思考该怎么学,要达到一个这样的水平才能在毕业后胜任自己喜欢的、想要的岗位。其实准确地说就是让我们更好地去规划好自己接下来的大学生活,让自己成为一名符合这个时代的大学生,树立起职业目标。二、实习时间2020年12月18日星期五8:00-5;30

2020-12-20 20:42:19 10572 2

原创 带权路径长度

一、题目给定n个权值作为n个叶子结点,构造哈夫曼树, 求其带权路径长度。二、分析带权路径长度得计算方法有两种:第一是第一法,第二是等于各个非叶子结点的权值之和。这里我们用方法二计算,但是按照老方法,先构造一个哈夫曼树,之后再来计算会超时,所以这里我们不构造。可是对每次结果进行排序得话,再来选取最小得两个权值,函数会超时。所以我有点无能为力。然后在百度上搜索了一下,发现很多人都是使用优先队列做出来来的。所以我查阅了一下关于优先队列得知识。如下:在优先队列中,元素被赋予优先级。当访问元素时,具有最

2020-12-15 11:36:37 10029

原创 24点游戏(1)

一、题目读入表达式树的先序遍历字符串,这里的表达式树是来自24点游戏的真实场景,也就是对应四个数字(值在1到13之间)组成的表达式,问该表达式树能不能得到24?二、分析先序遍历创建二叉树。然后递归求其值。栈来处理左子树与右子树运算,不过这里要注意许多细节,像除数为0,还有这里是浮点型。同样是用栈计算值,但是这里有许多细节,像除数为0,还有这里是浮点型。之前就是没注意浮点型,结果错了很多次。三、算法实现(主要代码)typedef struct tree{ char data[

2020-12-15 11:34:16 1908 1

原创 表达式树的值

一、题目读入表达式树的先序遍历字符串,求其值。二、分析对于解决表达式树的值,可以用栈来实现,也可以直接递归计算。方法一:可以使用栈来计算。方法二:直接用左子树与右子树运算。三、算法实现(主要代码)方法一:栈typedef struct tree{ char data[5]; struct tree*ld,*rd;}*Tree;void sum(Tree T){ int y,f,d; if(T) { sum(T->ld);

2020-12-15 11:31:16 1290

原创 表达式树的创建与输出

一、题目编一个程序,读入先序遍历字符串,根据此字符串建立一棵二叉树(以指针方式存储),输出一行,内容是该表达式树的全括号表达式,二、分析先先序创建二叉树,然后根据先序遍历求格式控制输出即可。输出左括号,然后输出左子树,根,右子树,输出右括号。仔细观察要求要输出的,然后根据遍历算法设计出,相应的输出格式算法。树——遍历。极为重要,也是基础。三、算法实现(主要代码)typedef struct tree{ char data[5]; struct tree*ld,*rd;

2020-12-14 16:30:10 1917

原创 二叉树的创建和文本显示

一、题目编一个程序,读入先序遍历字符串,根据此字符串建立一棵二叉树(以指针方式存储)。二、分析首先根据先序遍历,用链表的存储方式,创建一棵二叉链表数。然后控制格式进行输出即可。其实题目中的输出格式,便是二叉树根据“右”、“根”、“左”这样的次序,然后空格数就是深度乘以4。细观察输出的格式,,右、根、左。然后找到相应的解决措施。二叉树的大部分算法都基于遍历的积除上。三、算法实现(主要代码)typedef struct tree{ char data[5]; struct

2020-12-14 16:27:47 1443 1

原创 中缀表达式转后缀表达式

一、题目输入一个中缀表达式,编程输出其后缀表达式,要求输出的后缀表达式的运算次序与输入的中缀表达式的运算次序相一致二、分析中缀表达式转后缀表达式的方法:1.遇到操作数:直接输出(添加到后缀表达式中)2.栈为空时,遇到运算符,直接入栈3.遇到左括号:将其入栈4.遇到右括号:执行出栈操作,并将出栈的元素输出,直到弹出栈的是左括号,括号不输出。5.遇到其他运算符:加减乘除:弹出所有优先级大于或者等于该运算符的栈顶元素,然后将该运算符入栈6.最终将栈中的元素依次出栈,输出。其实题目中已经给出

2020-12-14 16:24:24 1302

原创 后缀表达式求值

一、题目输入一行表示后缀表达式,数与数之间一定有空格隔开(可能不只一个空格),最后输入@表示输入结束二、分析后缀表达式,特点为运算符在两个操作数后,所可以用栈来实现。用一个栈来存储数,遇到运算符则弹出两个数来进行计算,然后将结果入栈。三、算法实现(主要代码)数据结构:栈。这里我用的是一个整型数组:a[1000]. char s[1000]; int i,x,f,e,d,tag,j=0,n; int a[1000]={0,}; gets(s); n=s

2020-12-14 16:19:35 3665 1

原创 单词检查(Ⅰ)- 顺序表实现

一、题目如果输入文件中有词vake ,检查程序就能发现其是一个错误的单词,并且给出 bake, cake或vase做为修改建议单词。修改建议单词可以采用如下生成技术:(1)在每一个可能位置插入‘a-‘z’中的一者(2)删除单词中的一个字符(3)用‘a’-'z’中的一者取代单词中的任一字符二、分析首先存入词典。然后查找,如果查到则over。没查到,进入修改系统。(1)在每一个可能位置插入‘a-‘z’中的一者,如果字典比该词的长度大一,比较两者的区别,如果满足条件,则输出。(2)删除单词中

2020-12-14 16:16:37 1979

原创 大爱线性表

一、题目定表和一个操作串S,求出执行S后的表,如果中途出现‘D’操作于空表,输出“error”。二、分析‘R’反转,‘D’删除,其实删除是头部,但是如果转置一次,再删除那么删除的就是最尾部的元素了。所以可以用一个计数器去计数目前为止转置的次数,然后头部和尾部用用针向下标标记,遇到‘D,如果是偶素则删除头,头部标记加一,否则删除尾部,尾部标记减一。最后分情况输出,问题解决。三、算法实现(主要代码)char a[100100];int s[100100];int main(){ in

2020-12-14 16:11:41 380 1

原创 交集

一、题目有两个相等长度的正整数序列A和B,都是有序的(递增排序),同时一个序列中没有重复元素,现在需要求这两个序列的交――序列C,同时打印输出二、分析首先要注意的是升序,两个集合是有序的。这个在后面是可以作为条件优化的。求交集。最直接的方式当然是按照定义,A集合的每一个元素去B集合中寻找,而且是升序,那么查找时一遇到大于的即可判定,为表示交集的元素。而且前一个元素判定的位置可以作为下一个元素开始查找的起点。先用数组存储A然后直接逐个输入B中的元素,开始按上述所说判断。判定为交集的用另一个数组储

2020-12-14 16:09:06 1044

原创 Josephus 问题(2)

一、题目N人围成一个环,每个人一个编号1—n,然后1、2报数,报2出局,其余人继续,直至最后一人。求该人的编号。有时间限制二、分析找规律:我直接写出了n从1—17的最终答案,分别为:1、1、3、1、3、5、7、1、3、5、7、9、11、13、15、1…发现其是以2的幂次方为一个轮回,然后奇数增长。分开更容易看清:1 1、3 1、3、5、7 1、3、5、7、9、11、13、15个数刚好为1、2、4、8三、算法实现(主要代码)算法实现如下: long long n,m,

2020-12-14 16:06:06 1894 8

原创 Josephus 问题(1)

一、题目N人围成一个环,每个人一个编号1—n,然后1、2报数,报2出局,其余人继续,直至最后一人。求该人的编号。二、分析我们可以用一个一维数组去储存,下标表示编号(0号不用),然后数组值全部赋值为0,报到2者数组值改为1,一直持续,直至最后一个0.三、算法实现(主要代码) int a[1001]={0,}; int flag,n,k,x,i=1; while(scanf("%d",&n)!=EOF) { if(1==n||2==n)

2020-12-14 16:00:56 1192

原创 复杂度分析(1)

复杂度分析(1)一、题目:多层循环的运行规律,分析多层循环的复杂度。 for(i=1;i<n;i++) for(j=1;j<i;j++)for(k=1;k<j;k++)printf("\n"); 问printf语句共执行了几次?这段代码执行完以后i+j+k值为多少?二、思路与分析如果直接用一个计数器去计数printf,那么必定会超时。但是仔细观察,不难发现其中的规律,得出数学计算公式。从而用O(1)的算法解决问题。首先是printf执行的次数,输入n从1-300,次数

2020-12-14 15:53:33 2040

原创 求对称数

题目描述如果给定一个对称数n,请你求出大于n的最小对称数(即这个数从左向右读和从右向左读是完全一样的)。输入第一行输入t(0<t<19999);接下来的t行,每行输入一个n(0<n<10^9)。输出与输入相对应,每行输出一个大于n的最小对称数m解题思路:输入的为对称数,分类讨论,针对个位、及全是9、不全为9,三种情况处理,用字符串处理。算法步骤:1、输入的x为个位,如果不是9则,所求数为int(x+1),否所求数为11。2、如果全...

2020-11-19 12:26:17 4301

原创 打印日历

打印日历解题思路:首先计算出要打印的年份的第一天是星期几,然后计算出要打印的月份的第一天是星期几,考虑平年闰年,注意格式。算法步骤:1、根据推到公式(y+(y-1)/4-y/100+y/400)%7,可计算出要打印的年份的第一天是星期几。2、判断该年是平年还是闰年,知道该年第一天是星期几,可以知晓每个月的第一天是星期几。3、注意格式,打印。#include<stdio.h>intmon[2][13]={{0,31,28,31,30,31,30,31,31,30,31...

2020-08-05 16:42:57 424 3

原创 大数加法

解题思路:用字符串数组来存储两个数,因为两个数之和不会比两个数中最大位数的数位大2,按加法进位原则从个位开始,用另外一个数组来存储结果。但是要注意前导0,进位等。算法实现如下:#include<stdio.h>#include<string.h>int main(){int jw=0,n,j,m,x,number;int a[202]={0,}; //数组a[]用来存储结果char c[202],p[202]; //两个字符...

2020-07-06 22:18:35 289

空空如也

空空如也

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

TA关注的人

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