<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[lerry13579的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/lerry13579</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lerry13579]]></copyright><item><title><![CDATA[2021-02-03]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/113616438</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/113616438</guid><author>lerry13579</author><pubDate>Thu, 04 Feb 2021 08:47:43 +0800</pubDate><description><![CDATA[win10下安装kali子系统详细步骤

1.打开开发者选项，可能需要加载一些必要的程序。等就好了





2、打开适图中子系统服务。



3、去Microsoft 商店搜索kali,下载并安装，





4、设置用户名和密码初次安装时普通用户，初始时，root用户时没有的（不清楚，反正就是没有），需要重置root密码。

输入：su passwd root

设置密码完成后，先进入root用户，以免后面安装得sudo.

切换到root用户：su

输入刚那个密码





5、先安装一个v...]]></description><category></category></item><item><title><![CDATA[python刷题之路：递归--426. 恢复IP地址]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/100587311</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/100587311</guid><author>lerry13579</author><pubDate>Fri, 06 Sep 2019 22:05:28 +0800</pubDate><description><![CDATA[题目：

426.恢复IP地址

中文English

给一个由数字组成的字符串。求出其可能恢复为的所有IP地址。

(你的任务就是往这段字符串中添加三个点, 使它成为一个合法的IP地址. 返回所有可能的IP地址.)

样例

样例 1:


输入: "25525511135"
输出: ["255.255.11.135", "255.255.111.35"]

网上最详细的解释，每一步代码都有注...]]></description><category></category></item><item><title><![CDATA[LeetCode51：Python--N皇后问题]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/100528596</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/100528596</guid><author>lerry13579</author><pubDate>Tue, 03 Sep 2019 21:52:40 +0800</pubDate><description><![CDATA[看了很多人讲述的题解，都觉得不够清楚。然后自己写了一下，应该很清楚吧

如果是返回解的个数，那就直接用一个全局变量在遍历退出的地方记录一下就好了

或者返回len(ans)，哈哈哈


class Solution(object):
    """
    @param: n: The number of queens
    @return: All distinct solutions
   ...]]></description><category></category></item><item><title><![CDATA[两个队列实现一个栈]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/99347241</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/99347241</guid><author>lerry13579</author><pubDate>Mon, 12 Aug 2019 22:21:37 +0800</pubDate><description><![CDATA[class Q_to_S(object):
    def __init__(self):
        self.queue1 = []
        self.queue2 = []
    
    def push(self,data):
        if len(self.queue1) == 0:
            self.queue2.append(data)
  ...]]></description><category></category></item><item><title><![CDATA[dp基础之坐标型Max Square]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/85246335</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/85246335</guid><author>lerry13579</author><pubDate>Tue, 25 Dec 2018 13:12:55 +0800</pubDate><description><![CDATA[问题：给定一个全是0或1的网格，求一块全由1组成的最大的正方形的面积
例：
A = [[0,1,1,1,0],
    [0,1,1,1,1],
    [1,1,1,1,0],
    [0,0,1,0,0]]
输出：9（边长是3）

设:f[i][j]是以A[i][j]为右下角的最大的全1正方形的边长

    f[i][j] = 0                    if A[i][j]...]]></description><category></category></item><item><title><![CDATA[dp基础之难点解析K Edit Distance]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/85226170</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/85226170</guid><author>lerry13579</author><pubDate>Sun, 23 Dec 2018 21:14:15 +0800</pubDate><description><![CDATA[重要的是先说三遍：先看Edit Distance，先看Edit Distance，先看Edit Distance！

本文是加强版K Edit Distance：给定N个字符串A，问哪些字符串和Target的最小编辑距离不大于K.
编辑操作和上面一样：增加（插入）、删、替换

例：
输入：A = [&quot;abc&quot;,&quot;abd&quot;,&quot;abcd&quot;,&quot;adc,&quot;a&quot;](为了简单，只考虑小写字母的字符串)
Tar...]]></description><category></category></item><item><title><![CDATA[dp基础之难点解析K Sum]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/85119069</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/85119069</guid><author>lerry13579</author><pubDate>Thu, 20 Dec 2018 13:38:24 +0800</pubDate><description><![CDATA[问题：给定数组A,包含n个互不相等的正整数，问有多少种方式从中找出K个数，使得和为arget
例：
A = [1,2,3,4].K = 2,Target = 5
输出：2（1,4；2,3）

问题分析：
考虑最后一步A[n-1]是否选入这K个数
    case1:A[n-1]不选入，则需要在前n-1个数里选K个数使得和为Target
    case2:A[n-1]选入，则需要在前n-1个数里选...]]></description><category></category></item><item><title><![CDATA[dp基础之难点解析Minimum Adjustment Cost]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/85102864</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/85102864</guid><author>lerry13579</author><pubDate>Thu, 20 Dec 2018 13:10:53 +0800</pubDate><description><![CDATA[问题：给定数组A,每个元素是不超过100的正整数，将A中每个元素修改，使得变成数组B,要求是
数组B中任意两个相邻元素之间的差不超过Target,求最小的修改代价,即|A[0]-B[0]|+...+|A[n-1]_B[n-1]|的最小值
例：
A = [1,4,2,3],Target = 1
输出：2（B = [2,3,2,3]）

问题分析：首先无论怎么修改，B中的元素肯定是在1和100之间，因...]]></description><category></category></item><item><title><![CDATA[dp基础之Ones and Zeroes]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84786895</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84786895</guid><author>lerry13579</author><pubDate>Tue, 04 Dec 2018 13:16:15 +0800</pubDate><description><![CDATA[问题：给定t个01字符串S[0],...,S[t-1],现有m个0，n个1，问最多能组成多少个给定字符串，每个字符串最多组成一次。
例：
输入：
S = [&quot;10&quot;,&quot;0001&quot;,&quot;111001&quot;,&quot;1&quot;,&quot;0&quot;],m = 5,n = 3
输出：4（&quot;10&quot;,&quot;0001&quot;,&quot;1&quot;,&quot;0&quot;）

跟背包问题有点类似，我们考虑最后一个字]]></description><category></category></item><item><title><![CDATA[dp基础之双序列型regular expression match && wildcad match]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84779769</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84779769</guid><author>lerry13579</author><pubDate>Mon, 03 Dec 2018 21:22:30 +0800</pubDate><description><![CDATA[问题：给定两个字符A,B,B是一个正则表达式，里面可能含有&quot;.&quot;、&quot;*&quot;，请问A是否和B匹配？（True/False）
&quot;.&quot;可以匹配前面的任何一个字符，&quot;*&quot;可以匹配前面的一个字符0、1、多次
A = [&quot;aa&quot;,&quot;aa&quot;,&quot;aaa&quot;,&quot;aa&quot;,&quot;aa&quot;,&quot;ab&quot;,&quot;aab&quot;]
B = []]></description><category></category></item><item><title><![CDATA[dp基础之双序列型子串出现次数]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84777947</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84777947</guid><author>lerry13579</author><pubDate>Mon, 03 Dec 2018 19:30:42 +0800</pubDate><description><![CDATA[问题：给定A[0,...,m-1],B[0,...,n-1],问B在A中出现几次（可以不连续）
例：
A = ['r','a','b','b','b','i','t']
B = ['r','a','b','i','t']
输出：3

问题分析：可以用类似于最长公共子串的思路。问B在A中出现的次数，考虑最后一个字符B[n-1]和A[m-1]
    case1:如果B[n-1] = A[m-1],则...]]></description><category></category></item><item><title><![CDATA[dp之空间优化理解]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84586532</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84586532</guid><author>lerry13579</author><pubDate>Wed, 28 Nov 2018 16:32:10 +0800</pubDate><description><![CDATA[有关之前空间优化用了滚动数组的方法（如果可以优化的话），其实最好空间的复杂度是min{O(m),O(n)}，本质上是矩阵计算时的变化情况，即按行计算还是按列计算的问题，空间优化的本质也在于此，只要弄清楚了计算过程的变化情况，一般情况下就解决空间优化的问题。...]]></description><category></category></item><item><title><![CDATA[dp基础之双序列型最短编辑距离Edit Distance]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84586372</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84586372</guid><author>lerry13579</author><pubDate>Wed, 28 Nov 2018 16:25:50 +0800</pubDate><description><![CDATA[问题：给定连个字符串A、B,要求把A变成B,可以进行如下操作，问最少的操作次数可以使A变成B，即最小编辑距离?
操作：增加（插入）、删、替换
例：
A = ['m','a','r','t'],B = ['k','a','r','m','a']
输出：3（m换成k,t换成m,加上a）

问题分析：设m = len(A),n = len(B),我们考虑最后，操作完成后，A的长度也变成n,A[n-1] ...]]></description><category></category></item><item><title><![CDATA[dp基础之双序列型交错形成字符串]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84563193</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84563193</guid><author>lerry13579</author><pubDate>Tue, 27 Nov 2018 11:38:48 +0800</pubDate><description><![CDATA[问题：给定三个字符串A,B,X，判断X是否是由A,B的字符交错而形成（True/False）
例：A = ['a','a','b','c','c'],B = ['d','b','b','a','c']
X = [&quot;a&quot;,&quot;a&quot;,'d',&quot;b&quot;,'b',&quot;c&quot;,'b',&quot;c&quot;,'a','c']
输出：True(双引号是A中的字符，单引号是B中的字符)

问题分析：令m = len(A),n = le...]]></description><category></category></item><item><title><![CDATA[dp基础之双序列型最长公共子串]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84503319</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84503319</guid><author>lerry13579</author><pubDate>Sun, 25 Nov 2018 22:23:44 +0800</pubDate><description><![CDATA[问题：给定两个字符串A,B，找到两个字符互传的公共最长子串的长度。
子串：在原字符串上去去掉某些字符后形成的字符串，不改变字符之间的顺序
例：
A = ['j', 'i', 'u', 'z', 'h', 'a', 'n', 'g']
B = ['l', 'i', 'j', 'i', 'a', 'n', 'g']
输出：5（ ['j', 'i', 'a', 'n', 'g']）

问题分析：
确定状...]]></description><category></category></item><item><title><![CDATA[dp基础之区间型炸气球]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84455623</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84455623</guid><author>lerry13579</author><pubDate>Sun, 25 Nov 2018 01:57:32 +0800</pubDate><description><![CDATA[问题：有N个气球A[1],...A[N],扎破第i个气球所得的金币A[left]*A[i]*A[right],扎破气球i后，
气球left和right就变成相邻的气球，求获得最多的金币数，A[0] = A[N+1] = 1
例：
A = [3,1,5,8]
[3,5,8]--&amp;gt;[3,8]--&amp;gt;[8]--&amp;gt;[]
金币数3*1*5+3*5*8+1*3*8+1*8*1 = 167

问...]]></description><category></category></item><item><title><![CDATA[dp基础之区间型scramble string]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84451774</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84451774</guid><author>lerry13579</author><pubDate>Sat, 24 Nov 2018 21:27:43 +0800</pubDate><description><![CDATA[问题：给定一个字符串S,按照树的结构每次二分左右两个部分，直至到单个字符，在树的某个节点交换左右儿子，可以形成新的字符串，判断一个字符串T是否经过这样的变换而成。
例：
S = 'grate',T = 'rgtae'
S = ['g','r','a','t','e'] ,T = ['r','g','t','a','e']
输出：True

如下图示意



 

问题分析：
首先：如果T和S长度不...]]></description><category></category></item><item><title><![CDATA[dp基础之博弈型和区间型结合轮流取数字]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84449213</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84449213</guid><author>lerry13579</author><pubDate>Sat, 24 Nov 2018 17:07:08 +0800</pubDate><description><![CDATA[问题：给定一个序列A[0],..,A[N-1]，两个人轮流从序列两头取数字（每次只取一个），双方都用最优策略，使自己的取到的数字和尽量比对手大。
问先手是否必胜？当和一样大时规定先手胜。(True/False)
例：
A = [1,5,233,7]
输出：True(,先手取1，无论后手取哪个，先手都能取到233，即先手必胜)

问题分析：
这是一道博弈型dp,其实质上是区间型dp,目标是让自己拿到...]]></description><category></category></item><item><title><![CDATA[dp基础之区间型最长回文子串]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84398821</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84398821</guid><author>lerry13579</author><pubDate>Fri, 23 Nov 2018 23:39:28 +0800</pubDate><description><![CDATA[区间型dp:一般是给定一个字符串或者序列，对其进行一些操作，最后一步将它去头或者去尾，剩下会是一个区间 [ i , j ],状态定义就是f[i][j],表示子序列[i,j]具有的最优性质。

问题一：给定一个字符串序列，找出其最长的子回文串序列的长度。
例:
输入：S = ['b','b','b','a','b']
输出：4（['b','b','b','b']）

问题分析：最优策略的子序列是T,...]]></description><category></category></item><item><title><![CDATA[dp基础之背包问题小结]]></title><link>https://blog.youkuaiyun.com/lerry13579/article/details/84330838</link><guid>https://blog.youkuaiyun.com/lerry13579/article/details/84330838</guid><author>lerry13579</author><pubDate>Fri, 23 Nov 2018 16:27:11 +0800</pubDate><description><![CDATA[可行性背包问题：最多能装多少重量，需要记录前 i 个物品能不能拼出重量W（w=0...Target）,如dp基础之背包问题里的问题一,用f[i][w]表示前i个物品能不能拼出重量w,f[i][w] = True/False

 

计数型背包问题：有多少种方式拼出重量，如dp基础之背包问题里的问题二,f[i][w]表示前i种物品拼出重量w的方式数，如dp基础之背包问题里的问题三，有多少种方式拼出重...]]></description><category></category></item></channel></rss>