<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[malloc_can的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/malloc_can</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; malloc_can]]></copyright><item><title><![CDATA[RSA非对称加密原理]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/117160118</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/117160118</guid><author>malloc_can</author><pubDate>Sat, 22 May 2021 14:30:09 +0800</pubDate><description><![CDATA[RSA非对称加密原理

我们都知道对称加密是用一串密钥进行加密以及解密，故密钥保存在接受者和发送者手中，但一旦被窃取了密钥，安全信息自然的就暴露了。
故而就有了非对称加密：设计两种密钥，一种公钥对所有人公开，另一种密钥只有接受者拥有。发送者只能用公钥进行加密，接受者拿到密文后只能用密钥进行解密。

一，加密思路：
有没有一种正向加密简单，逆向求原值难呢，答案就是取模运算（单向函数），如要计算33mod73^3 mod  733mod7  很简单 答案是2 但要计算 原来的数：9，情况就比较复杂了。非对称加密]]></description><category></category></item><item><title><![CDATA[leetcode每日一题信息抓取 早安语录 定时任务]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/113004579</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/113004579</guid><author>malloc_can</author><pubDate>Fri, 22 Jan 2021 23:28:13 +0800</pubDate><description><![CDATA[有需求就有服务]]></description><category></category></item><item><title><![CDATA[蓝桥杯（测试次数）]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108991965</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108991965</guid><author>malloc_can</author><pubDate>Sat, 10 Oct 2020 10:24:48 +0800</pubDate><description><![CDATA[x星球的居民脾气不太好，但好在他们生气的时候唯一的异常举动是：摔手机。
各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试，并且评定出一个耐摔指数来，之后才允许上市流通。x星球有很多高耸入云的高塔，刚好可以用来做耐摔测试。塔的每一层高度都是一样的，与地球上稍有不同的是，他们的第一层不是地面，而是相当于我们的2楼。
如果手机从第7层扔下去没摔坏，但第8层摔坏了，则手机耐摔指数=7。
特别地，如果手机从第1层扔下去就坏了，则耐摔指数=0。
如果到了塔的最高层第n层扔没摔坏，则耐摔指数.]]></description><category></category></item><item><title><![CDATA[洛谷java实现(P1091合唱队形)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108805250</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108805250</guid><author>malloc_can</author><pubDate>Fri, 25 Sep 2020 22:22:34 +0800</pubDate><description><![CDATA[题目连接：https://www.luogu.com.cn/problem/P1091

这题和导弹拦截特别像，本质都是求最长上升子序列。
import java.util.Scanner;
/**
 * 贪心优化-时间复杂度 ：O(nlogn)
 */
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = i.]]></description><category></category></item><item><title><![CDATA[洛谷java实现(P2029跳舞)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108700608</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108700608</guid><author>malloc_can</author><pubDate>Sun, 20 Sep 2020 23:50:32 +0800</pubDate><description><![CDATA[题目链接:https://www.luogu.com.cn/problem/P2029

典型的动态规划题目

定义状态:dp[i][j]:已跳到第i个且已踩准j个的最高分数
初始状态:dp[i][0]=dp[i-1][0]-s[i] (踩准0个 都扣分)
状态转移:
① 如果踩准的次数达到奖励机制数,当前选择踩:dp[i-1][j] - s[i],不踩: dp[i-1][j - 1] + s[i] + b[i]
②踩准的次数不达到奖励机制数,当前选择踩:dp[i-1][j] - s[i],不踩: dp[.]]></description><category></category></item><item><title><![CDATA[洛谷java实现(P1111修复公路)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108674975</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108674975</guid><author>malloc_can</author><pubDate>Sat, 19 Sep 2020 00:10:30 +0800</pubDate><description><![CDATA[题目类型典型的求最小生成树,可以使用prim算法或者kruskal算法,这里使用kruskal算法!
大致思路:]]></description><category></category></item><item><title><![CDATA[洛谷java实现(P1439[模板]最长公共子序列)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108654233</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108654233</guid><author>malloc_can</author><pubDate>Thu, 17 Sep 2020 22:44:02 +0800</pubDate><description><![CDATA[题目链接:https://www.luogu.com.cn/problem/P1439

首先这是一道绿题,如果用动态规划(时间复杂度n^2)对于n=10 ^5肯定过不了,当然动态规划适合leetcode这道题1143. 最长公共子序列感兴趣可以看看
题解如下:
 /**
     * 动态规划+内存优化
     */
public int longestCommonSubsequence(String text1, String text2) {
    if (text1 == null || te.]]></description><category></category></item><item><title><![CDATA[动态规划(含习题)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108476621</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108476621</guid><author>malloc_can</author><pubDate>Wed, 09 Sep 2020 23:36:07 +0800</pubDate><description><![CDATA[一,动态规划演变过程:
1,暴力递归(自下向上)
2,记忆化搜索(自下向上)
3,递推(自底向上)
二,动态规划特征:
① 将复杂的原问题拆解成若干个简单的子问题
② 每个子问题仅仅解决1次，并保存它们的解
③ 最后推导出原问题的解
◼ 可以用动态规划来解决的问题，通常具备2个特点
最优子结构（最优化原理）：通过求解子问题的最优解，可以获得原问题的最优解
无后效性
✓ 某阶段的状态一旦确定，则此后过程的演变不再受此前各状态及决策的影响（未来与过去无关）
✓ 在推导后面阶段的状态时，只关心前面阶段的具体状]]></description><category></category></item><item><title><![CDATA[洛谷java实现(P1025_数的划分)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/108411555</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/108411555</guid><author>malloc_can</author><pubDate>Fri, 04 Sep 2020 21:12:20 +0800</pubDate><description><![CDATA[题目链接:https://www.luogu.com.cn/problem/P1025



看题目我们不难发现,典型的深搜+回溯+剪枝;
看实例答案我们可以发现数据特征:

后面的数要大于等于前一个数,(保证了不重复的分法)
数据逐渐成均匀分布
每当确定一个数后面的数可均分剩下的数

public class Main {
    static int n, k, count;

    public static void main(String[] args) {
        Scanner i.]]></description><category></category></item><item><title><![CDATA[根据ip获取地址和运营商]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/106749656</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/106749656</guid><author>malloc_can</author><pubDate>Sun, 14 Jun 2020 18:50:44 +0800</pubDate><description><![CDATA[1]]></description><category></category></item><item><title><![CDATA[JAVA对Excel的导出与导入]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/105441039</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/105441039</guid><author>malloc_can</author><pubDate>Fri, 10 Apr 2020 20:59:52 +0800</pubDate><description><![CDATA[相关jar包:jxl
使用pom配置导入
		&lt;dependency&gt;
            &lt;groupId&gt;net.sourceforge.jexcelapi&lt;/groupId&gt;
            &lt;artifactId&gt;jxl&lt;/artifactId&gt;
            &lt;version&gt;2.6.12&lt...]]></description><category></category></item><item><title><![CDATA[使用IDEA通过maven整合ssm框架的配置]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/105278271</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/105278271</guid><author>malloc_can</author><pubDate>Thu, 02 Apr 2020 21:48:22 +0800</pubDate><description><![CDATA[配置maven
1,配置maven的环境变量

2,检查是否配置成功
在命令窗口上输入mvn -v

3，Maven规定了一套默认的项目格式：
src/main/java  —— 存放项目的.java文件
==src/main/resources == —— 存放项目资源文件，如spring、springMVC、db.properties,Mybatis的配置文件
src/main/webapp ...]]></description><category></category></item><item><title><![CDATA[struts2学习第三天(输入校验-文件上传-下载)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/104486112</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/104486112</guid><author>malloc_can</author><pubDate>Mon, 24 Feb 2020 21:42:09 +0800</pubDate><description><![CDATA[struts2的输入校验
1Action类中继承ActionSuport类(因为该类继承了validateable)覆盖其validate抽象方法在方法体中校验,并将其校验结果的信息(错误,提示信息)保存在fieldError中

执行流程:


jsp代码:
&lt;h3&gt;注册页面&lt;/h3&gt;
	&lt;!--手动h获取错误信息,在root区域--&gt;
	&lt;s:prop...]]></description><category></category></item><item><title><![CDATA[Struts2学习第三天(OGNL-ValueStack-标签库)]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/104481696</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/104481696</guid><author>malloc_can</author><pubDate>Mon, 24 Feb 2020 21:40:27 +0800</pubDate><description><![CDATA[OGNL

首先了解下OGNL的概念：OGNL是Object-Graph NavigationLanguage的缩写，全称为对象图导航语言，是一种功能强大的表达式语言，它通过简单一致的语法，可以任意存取对象的属性或者调用对象的方法，能够遍历整个对象的结构图，实现对象属性类型的转换等功能。

OGNL中重要的3个符号：#、%、$:
#:

用来访问值栈中的Context区域.
用来构造Map(在st...]]></description><category></category></item><item><title><![CDATA[Struts2学习第二天]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/104442398</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/104442398</guid><author>malloc_can</author><pubDate>Sat, 22 Feb 2020 13:47:57 +0800</pubDate><description><![CDATA[一,Action访问ServletAPI的三种方式:
方式1:通过让Action类去实现感知接口.
此时项目依赖:servlet-api.jar.

ServletRequestAware：感知HttpServletRequest对象；
ServletResponseAware：感知HttpServletResponse对象；
ServletSessionAware：感知HttpSession对象...]]></description><category></category></item><item><title><![CDATA[Struts2学习第一天]]></title><link>https://blog.youkuaiyun.com/malloc_can/article/details/104399021</link><guid>https://blog.youkuaiyun.com/malloc_can/article/details/104399021</guid><author>malloc_can</author><pubDate>Wed, 19 Feb 2020 20:21:00 +0800</pubDate><description><![CDATA[导言:Struts2 是一个非常优秀的MVC框架，基于Model2 设计模型.

由传统Struts1和WebWork两个经典框架发展而来:Struts2框架=Struts2+XWork

Strust2 核心功能:

负责表现层:处理与界面交互的相关操作
允许POJO（Plain Old Java Objects）对象 作为Action. Action的execute 方法不再与Servlet
...]]></description><category></category></item></channel></rss>