自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 树与二叉树的相互转换

树->二叉树加线把相应结点的兄弟结点连线去线去掉双亲和非最左边孩子的连线旋转二叉树->树加线-去线将结点与其左孩子的右孩子及其右子孙连线。然后去掉所有结点与其右孩子的连线。旋转处理得到二叉树#森林->二叉树先将每棵树转换为二叉树连接每棵树的根结点以第一颗树的根作为二叉树的根顺时针旋转#二叉树->森林将二叉树的根结点与其右孩子及右子孙的连线全部去掉对剩下的每一棵孤立的二叉树按照二叉树与树的转换规则转换为树得

2020-11-11 22:54:54 5377

原创 二叉树主要性质推导

二叉树主要性质推导二叉树的定义二叉树或为空树,或是由一个根节点加上两棵分别被称为左子树和右子树的、互不相交的二叉树组成。二叉树性质二叉树第i层上最多有2i−12^{i-1}2i−1个结点数学归纳法:当i=1时,二叉树只有一个根结点;假设对于第j层满足至多有2j−12^{j-1}2j−1个结点,如果第j层每个结点 都拥有两个孩子结点,则第j+1层拥有2j2^j2j个结点。深度为k的二叉树上至多含有2k−12^{k}-12k−1个结点证明:由性质1知二叉树每一层最大结点数

2020-11-07 17:21:53 1117 1

原创 “特殊”0-1背包问题

引言对于通常的0-1背包问题来说,只用考虑重量以及放与不放这两个因素,今天看到一道问题加入了对于体积因素的考虑,即最终结果要求重量体积都不大于要求的值,且价值最大。原题如下:小刘去春游,有5个物品,已知各物品的质量、体积、个数、价格(各项数值可以自己找一组带一下,思想都是一样的),总共能带500cm³和100kg的物品,求能带物品的最大价值。请用递归算法解决。递归解法很明显这是在经典的0...

2018-11-20 18:29:25 1902

原创 从零开始的算法题生活(四)

引言hiho一下第145周,其实看到题目有点无奈,居然是dp,好吧,承认自己好久没做过dp了。描述小Hi、小Ho还有被小Hi强拉来的小Z,准备组队参加一个智力竞赛。竞赛采用过关制,共计N个关卡。在第i个关卡中,小Hi他们需要获得Ai点分数才能够进入下一关。每一关的分数都是独立计算的,即使在一关当中获得超过需要的分数,也不会对后面的关卡产生影响。小Hi他们可以通过答题获得分数。答对一...

2018-07-17 09:19:20 203

原创 从零开始的算法题生活(三)

引言练习的有点频繁了,无奈近来心情太乱,刷刷算法题有益身体健康^_^,本次的题是hihoCoder144周练习题描述小Hi最近在追求一名学数学的女生小Z。小Z其实是想拒绝他的,但是找不到好的说辞,于是提出了这样的要求:对于给定的两个正整数N和M,小Hi随机选取一个N的约数N’,小Z随机选取一个M的约数M’,如果N’和M’相等,她就答应小Hi。小Z让小Hi去编写这个随机程序,到时候她...

2018-07-17 09:18:57 202

原创 从零开始的算法题生活(二)

引言前几天刷了下微软的预科生笔试题,感觉略难,今天静下心仔细思考做出其第一道,特此分享一下。题目描述Little Hi is playing a video game. Each time he accomplishes a quest in the game, Little Hi has a chance to get a legendary item.At the beginn...

2018-07-17 09:18:17 181

原创 从零开始的算法题生活(一)

引言深切感受到智商的重要性,所以随后会不定期练习算法题,大约最晚间隔不会超过一周,每次一道,就当大脑训练,以上。刷的网站也随机看心情,目前决定用hihoCoder,以下为这次刷的题。hiho密码描述小Ho根据最近在密码学课上学习到的知识,开发出了一款hiho密码,这款密码的秘钥是这样生成的:对于一种有N个字母的语言,选择一个长度为M的单词;将组成这个单词的所有字母按照顺序不重复的写...

2018-07-17 09:17:36 243

原创 CORS跨域发送Cookie

引言由于默认情况下浏览器对跨域请求不允许携带Cookie,所以这次开发再与前端同学在权限验证这块踩了好多坑,故将一些教训写下来,共勉!CROS在 2014 年 W3C 发布了 CORS Recommendation 来允许更方便的跨域资源共享,同时CORS也允许我们使用额外的相应头字段来允许跨域发送Cookie。模拟前端代码设置withCredentials为true即可让该跨域请求携带 Cook...

2018-06-25 10:14:25 3002

转载 servlet 中getLastModified()

在http协议中,浏览器对访问过的页面缓存后,它将会在以后访问该页面时,将会根据LastModified头字段指定的时间值生成If-Modified-Since头字段,作为缓存页面的最新更新时间。如果网页的最后修改时间比If-Modified-Since头字段指定的时间早的话,web服务器就会请求的页面,如果自If-modified-Since指定的时间以来,网页内容没有被修改的话,服务器就会返回...

2018-06-25 10:13:47 737

原创 计算IP地址及子网掩码

首先谈谈何为子网掩码:子网掩码——屏蔽一个IP地址的网络部分的“全1”比特模式。对于A类地址来说,默认的子网掩码是255.0.0.0;对于B类地址来说默认的子网掩码是255.255.0.0;对于C类地址来说默认的子网掩码是255.255.255.0。利用子网掩码可以把大的网络划分成子网,即VLSM(可变长子网掩码),也可以把小的网络归并成大的网络即超网。子网掩码的设定必须遵循一定的规则。与二进制I...

2018-06-25 10:13:05 2511

原创 Spring Ioc&Aop

引言控制反转,面向切面都是程序设计当中比较成熟和有用的概念,它对于高内聚低耦合,添加新功能等都是非常成熟的设计方案,在Java中尤其以Spring框架对于其实现较为成熟,故在此探讨下其原理。Spring AopAop代理其实是由AOP框架动态生成的一个对象,即代理对象。AOP代理包含了目标对象的全部方法,但AOP代理中的方法与目标对象的方法存在差异:AOP方法在特定切入点添加了增强处理,并回调了目...

2018-06-25 10:12:40 177

原创 malloc函数

引言时常在C语言中使用malloc函数来申请存储空间,却从未对其本质探索过,特此分析记录下。头文件#include<stdlib.h>函数原型void *malloc(size_t size);malloc()在堆区分配一块指定大小的内存空间,用来存放数据。这块内存空间在函数执行完成后不会被初始化,其值未知。分配成功返回内存地址,失败返回NULL。分配失败的原因有许多,其中一种为空间不...

2018-06-25 10:12:24 159

原创 深入了解Map Set

#引言近几天面试,期间面试官有多次提到源码层面的实现,故将自己以前看的东西拿出来加上自己现有的理解作以归类总结。#MapMap提供了一个更通用的元素存储方法。Map集合类用户存储元素对(称作“键”和“值”),其中每个键映射到一个值。从概念分析,感觉也可以将数组看作具有数值键的Map。Java当中有很多定义的Map类,首先先分析下Map接口本身,即其所定义的四种类型的方法,每个Map接口的实现都包含...

2018-06-25 10:12:03 165

原创 用汇编进行简单的文件读写

##前言一周前开始为了应付学校的汇编程序设计大赛,一直在学习汇编,在程序设计的过程中,关于汇编读写文件这块感触颇深,特此总结一下。##环境准备由于使用linxu开发环境,而MASMx86微处理器家族汇编开发环境需要在dos环境下运行,故下载DOSBOX模拟dos环境以便于开发。##读文件在此放上读取文件数据的指令: mov ah,3fH mov bx,handle mov cx,size...

2018-06-25 10:11:19 12115

原创 Linux中的UID与GID

什么是UID与GID? 登录Linux时,看起来是登录的账号,其实在计算机中仅仅认识ID,而每个登录的用户都会取得两个ID这就是GID与UID。UID也称为用户ID(UserID),GID也称为用户组ID(Group ID)。操作系统就是利用它两来判断文件的所有者与用户组的。UID 提到UID,就必须提一下专门管理用户UID的文件/etc/passwd。以下是我自己电脑的/etc/...

2018-06-25 10:11:06 16887

原创 JSP&Servlet 学习笔记(八)

22,请求封装器对于容器产生的HttpServletRequest对象,无法直接修改某些信息,如请求参数值就是一个例子。如果实现HttpServletRequest接口,让getParameter()返回过滤后的请求参数值,HttpServletRequest接口定义的方法都要实现,这相当麻烦。有个HttpServletRequestWraper实现了HttpServletRequest接口,只要...

2018-06-25 10:10:33 215

原创 JSP&Servlet 学习笔记(七)

21,过滤器在Servlet/JSP中要实现过滤器,必须实现Filter接口,并使用@WebFilter标注或在web.xml中定义过滤器,让容器知道该加载哪些过滤器类。import java.io.IOException;public interface Fileter{                       public void init (FilterConfig filterCon...

2018-06-24 18:29:11 145

原创 JSP&Servlet 学习笔记(六)

18,ServletContext事件,监听器ServletContext相关监听器,ServletContextListener与ServletContextAttributeListener(1)ServletContextListenerServletContextListener是"生命周期监听器",如果想要知道何时Web应用程序已经初始化或即将结束销毁,可以实现ServletContex...

2018-06-24 18:28:56 135

原创 JSP&Servlet 学习笔记(五)

16,使用ServletConfigServletConfig相当于个别Servlet的设置信息代表对象,这意味着可以从ServletConfig中取得Servlet设置信息。ServletConfig定义了getInitParameter(),getInitParameterNames()方法,可以取得设置Servlet时的初始参数。使用注解设置个别Servlet的初始参数,可以在@WebSer...

2018-06-24 18:28:38 154

原创 JSP&Servlet 学习笔记(四)

13,使用CookieCookie是在浏览器存储信息的一种方式,服务器可以响应浏览器set-cookie标头,浏览器收到这个标头与数值后,会将它以文件的形式存储在计算机上,这个文件就称之为Cookie。HTTP中Cookie的设定是通过set-cookie标头,所以必须在实际响应浏览器之前使用addCookie()来新增Cookie实例,在浏览器输出HTML响应之后再运行addCookie()是没...

2018-06-24 18:28:23 176

原创 JSP&Servlet 学习笔记(三)

7,HttpServletRequest使用HttpServletRequest取得HTTP请求中的信息(1)getParameter():指定请求参数名称来取得对应的值;(2)getParameterValues():当同一个请求参数名称具有多个值,使用其返回一个String数组;getParameterNames():获得请求中有多少个参数;(3)getParameterMao()将请求参数以...

2018-06-24 18:28:06 220

原创 JSP&Servlet 学习笔记(二)

5,从容器到HttpServlet请求过程:当请求来到HTTP服务器,而HTTP服务器转交请求给容器时,容器会创建一个代表当次请求的HttpServletRequest对象,并将请求相关信息设置给该对象。同时,容器会创建一个HttpServletResponse对象,作为稍后要对客户端进行响应的Java对象。接着容器会根据读取的@WebServlet标注或web.xml的设置,找出处理该请求的Se...

2018-06-24 18:27:39 140

原创 JSP&Servlet 学习笔记(一)

1,何为Web容器容器:用来保存持有对象集合对象,对于Servlet/JSP,不仅持有对象,并且负责对象的生命周期与相关服务连接;在抽象层面,可以将Web容器视为运行Servlet/JSP的HTTP服务器.,如同java仅认得JVM这个操作系统,Servlet/JSP程序在抽象层面上,也仅认得Web容器其这个概念上的HTTP服务器。(JSP最终也是转译,编译,加载为Servlet,在容器的世界中,...

2018-06-24 18:27:11 186

原创 了解Java容器

容器深入标签(空格分隔): Java编程高级语言中的容器实在是个很神奇的东西,有必要深入了解下。感觉Java虚拟机有必要找时间仔细看看。## 容器的填充容器的填充仍然像java.util.Arrays一样面临同样的不足。Collections类的fill()方法也只是复制同一个对象引用来填充整个容器的。class StringAddress{ private Strin...

2018-06-24 18:25:57 134

原创 数据库规范化

要讨论数据库范式,首先不得不解释的是函数依赖的概念。设R(U)是属性集U上的关系模式。X和Y是U的子集。若对于R(U)上的任意一个可能的关系r,如果r中不可能存在两个元组,它们在X上的属性值相等,而在Y上的属性值不等,则称X函数决定Y或Y函数依赖于X,记作X->Y。总而言之,这段话可以总结为当X属性值决定Y属性值时,则称X决定Y,或Y依赖于X。举个简单的例子:设计学生表时,学生的学号可以决定...

2018-06-24 18:25:23 928 1

转载 MySQL的my.cnf 文件里的配置项解释

[mysqld]port = 3306serverid = 1socket = /tmp/mysql.sockskip-locking# 避免MySQL的外部锁定,减少出错几率增强稳定性。skip-name-resolve禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL...

2018-06-24 18:24:54 178

转载 Servlet 3.0 之@WebFilter怎么控制多个filter的执行顺序

之前我们控制多个filter的执行顺序是通过web.xml中控制filter的位置来控制的,放在上面的会比放在下面的先执行,如下“用户登录检查过滤器”会比“接口日志过滤器”先执行<!-- 用户登录检测过滤器 --><filter> <filter-name>UserLoginFilter</filter-name> <filter-cla...

2018-06-12 09:13:52 1963 1

原创 利用 Maven 将项目部署到远程服务器

后来有了自己的服务器,常常喜欢将写的一些小的web程序练习放到服务器上测试运行,最常见的操作就是,用Eclipse打包war文件,然后在利用ssh上传的服务器,放置tomcat相关目录中完成部署,可是时间久了真心麻烦的要死,问了学长,果然有办法可以直接部署到远程服务器,将过程记录下来,分享下^_^.首先需要在Maven中引入tomcat-maven-plugin这个插件,去apache查了下这个插...

2018-06-12 09:13:18 4791

原创 为什么说语言只是工具?(临近毕业,无聊)

引言结束春招也有段日子了,投的岗位几乎都是后端开发相关,但是无论哪个公司面试到最后面试官表达的核心思想都是在公司不仅仅是做这一门语言相关的工作。以前在学校听某场由公司技术人员作的分享,记得当时的主持者问了一个很有意思的问题,“公司要开启一个新项目,需要使用一门新的语言,你认为给你多少时间让你学习?”。我记得在场同学有说一星期的,有说一个月的,有说三天的,然而那个主持者最后告诉我们,没有学习时间……...

2018-06-10 11:03:01 2092 1

原创 关于java中hasNext的探索中的一点想法

关于input.hasNext()翻看网上资料一直以为其是检测缓冲区有没下一个元素,但在实际运行中给了一段测试,while(input.hasNext()){    System.out.println("Hello world!");}System.out.println("Hello");但在程序运行过程当中while循环一直都在执行当中,于是我蒙了,这个下一个

2016-01-09 08:31:56 419

哈夫曼编译码器(命令行版,可压缩解压缩)

利用huffman树对文件进行编码译码,利用位操作压缩。利用Dev-C++完成.zip

2016-01-09

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

TA关注的人

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