<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[vitA_gsm的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/vitA_gsm</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; vitA_gsm]]></copyright><item><title><![CDATA[VUE初始项目构建]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/126285181</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/126285181</guid><author>vitA_gsm</author><pubDate>Thu, 11 Aug 2022 14:53:39 +0800</pubDate><description><![CDATA[Vue初始项目构建]]></description><category></category></item><item><title><![CDATA[利用Androguard获取APK使用权限]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/126160025</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/126160025</guid><author>vitA_gsm</author><pubDate>Thu, 04 Aug 2022 15:14:23 +0800</pubDate><description><![CDATA[利用Androguard获取APK使用权限。]]></description><category></category></item><item><title><![CDATA[利用Androguard获取APK的api]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/126159931</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/126159931</guid><author>vitA_gsm</author><pubDate>Thu, 04 Aug 2022 15:12:51 +0800</pubDate><description><![CDATA[利用Androguard获取APK的api。]]></description><category></category></item><item><title><![CDATA[剑指offer-67.剪绳子]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106715931</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106715931</guid><author>vitA_gsm</author><pubDate>Fri, 12 Jun 2020 16:15:41 +0800</pubDate><description><![CDATA[67.剪绳子
题目描述
给你一根长度为n的绳子，请把绳子剪成整数长的m段（m、n都是整数，n&gt;1并且m&gt;1），每段绳子的长度记为k[0],k[1],…,k[m]。请问k[0]xk[1]x…xk[m]可能的最大乘积是多少？例如，当绳子的长度是8时，我们把它剪成长度分别为2、3、3的三段，此时得到的最大乘积是18。
记录
4 ： 22
5 ： 23
6 ： 33
7 ： 223
8 ： 233
9 ： 333
10：2233
11：2333
12：3333
13：22333
都是2和3的组合。

#]]></description><category></category></item><item><title><![CDATA[剑指offer-66.机器人的运动范围]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106715317</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106715317</guid><author>vitA_gsm</author><pubDate>Fri, 12 Jun 2020 14:54:46 +0800</pubDate><description><![CDATA[# -*- coding:utf-8 -*-
class Solution:
    def __init__(self):  # 机器人可以倒回来，但不能重复计数。
        self.count = 0
    def movingCount(self, threshold, rows, cols):
        flag = [[1 for i in range(cols)] for j in range(rows)]
        self.findWay(flag,0,0,thresh]]></description><category></category></item><item><title><![CDATA[剑指offer-65.矩阵中的路径]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106714541</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106714541</guid><author>vitA_gsm</author><pubDate>Fri, 12 Jun 2020 14:25:41 +0800</pubDate><description><![CDATA[65.矩阵中的路径
题目描述
请设计一个函数，用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始，每一步可以在矩阵中向左，向右，向上，向下移动一个格子。如果一条路径经过了矩阵中的某一个格子，则之后不能再次进入这个格子。 例如，在下面的3 X 4 矩阵中包含一条字符串"bfce"的路径，但是矩阵中不包含"abfb"路径，因为字符串的第一个字符b占据了矩阵中的第一行第二个格子之后，路径不能再次进入该格子。
a  b  t  g
c  f  c  s
j  d  e  ]]></description><category></category></item><item><title><![CDATA[剑指offer-64.滑动窗口的最大值-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106695709</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106695709</guid><author>vitA_gsm</author><pubDate>Thu, 11 Jun 2020 20:09:51 +0800</pubDate><description><![CDATA[64.滑动窗口的最大值
题目描述
给定一个数组和滑动窗口的大小，找出所有滑动窗口里数值的最大值。例如，如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3，那么一共存在6个滑动窗口，他们的最大值分别为{4,4,6,6,6,5}； 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个： {[2,3,4],2,6,2,5,1}， {2,[3,4,2],6,2,5,1}， {2,3,[4,2,6],2,5,1}， {2,3,4,[2,6,2],5,1}， {2,3,4,2,[6,2,5],1]]></description><category></category></item><item><title><![CDATA[剑指offer-63.数据流中的中位数-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106691262</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106691262</guid><author>vitA_gsm</author><pubDate>Thu, 11 Jun 2020 18:15:32 +0800</pubDate><description><![CDATA[64.数据流中的中位数
题目描述
如何得到一个数据流中的中位数？如果从数据流中读出奇数个数值，那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值，那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流，使用GetMedian()方法获取当前读取数据的中位数。
记录
方法一：
排序
# -*- coding:utf-8 -*-
class Solution:
    def __init__(self):
        self.arr=[]
   ]]></description><category></category></item><item><title><![CDATA[剑指offer-62.二叉搜索树的第k个结点-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106690417</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106690417</guid><author>vitA_gsm</author><pubDate>Thu, 11 Jun 2020 15:46:44 +0800</pubDate><description><![CDATA[62. 二叉搜索树的第k个结点
题目描述
给定一棵二叉搜索树，请找出其中的第k小的结点。例如， （5，3，7，2，4，6，8）    中，按结点数值大小顺序第三小结点的值为4。
记录
二叉搜索树 + 中序遍历 ：相当于排序了
# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = ]]></description><category></category></item><item><title><![CDATA[剑指offer-61.序列化二叉树-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106689125</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106689125</guid><author>vitA_gsm</author><pubDate>Thu, 11 Jun 2020 15:29:56 +0800</pubDate><description><![CDATA[61.序列化二叉树
题目描述
请实现两个函数，分别用来序列化和反序列化二叉树
二叉树的序列化是指：把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串，从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改，序列化的结果是一个字符串，序列化时通过 某种符号表示空节点（#），以 ！ 表示一个结点值的结束（value!）。
二叉树的反序列化是指：根据某种遍历顺序得到的序列化字符串结果str，重构二叉树。
例如，我们可以把一个只有根节点为1的二叉树序列化为"]]></description><category></category></item><item><title><![CDATA[剑指offer-60.把二叉树打印成多行-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106671349</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106671349</guid><author>vitA_gsm</author><pubDate>Wed, 10 Jun 2020 17:30:51 +0800</pubDate><description><![CDATA[60.把二叉树打印成多行
题目描述
从上到下按层打印二叉树，同一层结点从左至右输出。每一层输出一行。
记录
# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    # 返回二维列表[[1,2],[4,5]]
    def Prin]]></description><category></category></item><item><title><![CDATA[剑指offer-59.按之字形顺序打印二叉树-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106671050</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106671050</guid><author>vitA_gsm</author><pubDate>Wed, 10 Jun 2020 17:18:59 +0800</pubDate><description><![CDATA[59.按之字形顺序打印二叉树
题目描述
请实现一个函数按照之字形打印二叉树，即第一行按照从左到右的顺序打印，第二层按照从右至左的顺序打印，第三行按照从左到右的顺序打印，其他行以此类推。
记录
层次遍历+奇偶行判断：奇数为1，偶数为-1
# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.rig]]></description><category></category></item><item><title><![CDATA[剑指offer-58.对称的二叉树-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106670326</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106670326</guid><author>vitA_gsm</author><pubDate>Wed, 10 Jun 2020 16:58:42 +0800</pubDate><description><![CDATA[58.对称的二叉树
题目描述
请实现一个函数，用来判断一颗二叉树是不是对称的。注意，如果一个二叉树同此二叉树的镜像是同样的，定义其为对称的。
记录
递归。
左左=右右；左右=右左；
# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
 ]]></description><category></category></item><item><title><![CDATA[剑指offer-57.二叉树的下一个结点-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106669379</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106669379</guid><author>vitA_gsm</author><pubDate>Wed, 10 Jun 2020 16:38:22 +0800</pubDate><description><![CDATA[57.二叉树的下一个结点
题目描述
给定一个二叉树和其中的一个结点，请找出中序遍历顺序的下一个结点并且返回。注意，树中的结点不仅包含左右子结点，同时包含指向父结点的指针。
记录

2345678
5节点有右子树，它的下一个节点就是它右子树的最左边的节点6，3和7同理
2节点没有右子树且是它的父节点3的左子树，那么按照：左根右“，下一个节点就是它的父节点3，6同理
4节点没有右子树且是它的父节点3的右子树，那么按照：左根右“，需要往上找父节点，直到：它是它的父节点的左子树的节点。4找到节点3再找到节点5，此时]]></description><category></category></item><item><title><![CDATA[剑指offer-56.删除链表中重复的结点-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106651236</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106651236</guid><author>vitA_gsm</author><pubDate>Wed, 10 Jun 2020 16:23:58 +0800</pubDate><description><![CDATA[56.删除链表中重复的结点
题目描述
在一个排序的链表中，存在重复的结点，请删除该链表中重复的结点，重复的结点不保留，返回链表头指针。 例如，链表1-&gt;2-&gt;3-&gt;3-&gt;4-&gt;4-&gt;5 处理后为 1-&gt;2-&gt;5
记录
# -*- coding:utf-8 -*-
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None
cla]]></description><category></category></item><item><title><![CDATA[剑指offer-55.链表中环的入口结点-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106650925</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106650925</guid><author>vitA_gsm</author><pubDate>Tue, 09 Jun 2020 21:20:53 +0800</pubDate><description><![CDATA[55. 链表中环的入口结点
题目描述
给一个链表，若其中包含环，请找出该链表的环的入口结点，否则，输出null。
记录
快慢指针
慢：一次走一步
快：一次走两步
第一次相遇：

慢：头指针到入口节点的长度 + x
快：头指针到入口节点的长度 + 环的总长度 + x
环的总长度 = 头指针到入口节点的长度 + x
头指针到入口节点的长度 = 环的总长度 - x = 慢指针一步一步走过的环剩下的长度

# -*- coding:utf-8 -*-
# class ListNode:
#     def __in]]></description><category></category></item><item><title><![CDATA[剑指offer-54.字符流中第一个不重复的字符-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106650487</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106650487</guid><author>vitA_gsm</author><pubDate>Tue, 09 Jun 2020 20:54:03 +0800</pubDate><description><![CDATA[54.字符流中第一个不重复的字符
题目描述
请实现一个函数用来找出字符流中第一个只出现一次的字符。例如，当从字符流中只读出前两个字符"go"时，第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时，第一个只出现一次的字符是"l"。
输出描述:
如果当前字符流没有存在出现一次的字符，返回#字符。
记录
字典
# -*- coding:utf-8 -*-
class Solution:
    # 返回对应char
    def __init__(self):
        sel]]></description><category></category></item><item><title><![CDATA[剑指offer-53.表示数值的字符串-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106649801</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106649801</guid><author>vitA_gsm</author><pubDate>Tue, 09 Jun 2020 20:40:37 +0800</pubDate><description><![CDATA[53.表示数值的字符串
题目描述
请实现一个函数用来判断字符串是否表示数值（包括整数和小数）。例如，字符串"+100",“5e2”,"-123",“3.1416"和”-1E-16"都表示数值。 但是"12e",“1a3.14”,“1.2.3”,"±5"和"12e+4.3"都不是。
记录
class Solution:
    # s字符串
    def isNumeric(self, s):
        # write code here
        #标志位
        hasSign = ]]></description><category></category></item><item><title><![CDATA[剑指offer-52.正则表达式匹配-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106649527</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106649527</guid><author>vitA_gsm</author><pubDate>Tue, 09 Jun 2020 20:02:14 +0800</pubDate><description><![CDATA[52.正则表达式匹配
题目描述
请实现一个函数用来匹配包括’.‘和’‘的正则表达式。模式中的字符’.‘表示任意一个字符，而’'表示它前面的字符可以出现任意次（包含0次）。 在本题中，匹配是指字符串的所有字符匹配整个模式。例如，字符串"aaa"与模式"a.a"和"abaca"匹配，但是与"aa.a"和"ab*a"均不匹配
记录
方法一：
# -*- coding:utf-8 -*-
import re
class Solution:
    # s, pattern都是字符串
    def match(se]]></description><category></category></item><item><title><![CDATA[剑指offer-51.构建乘积数组-python]]></title><link>https://blog.youkuaiyun.com/vitA_gsm/article/details/106630752</link><guid>https://blog.youkuaiyun.com/vitA_gsm/article/details/106630752</guid><author>vitA_gsm</author><pubDate>Mon, 08 Jun 2020 23:34:07 +0800</pubDate><description><![CDATA[51.构建乘积数组
题目描述
给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…*A[i-1]A[i+1]…*A[n-1]。不能使用除法。（注意：规定B[0] = A[1] * A[2] * … * A[n-1]，B[n-1] = A[0] * A[1] * … * A[n-2];）
记录
方法一：
B[0] = A[1] * A[2] * A[3] * A[4] *…*A[n-1] ;（无A[0]）
B[1 ]= A[0] * A[2]]]></description><category></category></item></channel></rss>