自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 时间序列常用模型及平稳性

在上节我们已经讲过,当时间序列的变动具有直线趋势时,用一次指数平滑法会出现滞后偏差,其原因在于数据不满足模型要求。

2021-10-17 21:05:54 1717

原创 时间序列初级模型

手算时间序列简单移动平均简单移动平均道理很简单,不再赘述。这里提及以下误差计算公式,此公式可以作为模型评估的标准。我们先来自己实现一个计算简单移动平均的函数:mySMA <- function (x, n) { sma <- c() sma[1:(n-1)] <- NA for (i in n:length(x)) { sma[i] <- mean(x[(i-n+1):i]) } return(sma)}> x = c(2, 3,

2021-10-13 23:46:03 316

原创 时间序列——R语言基础

R 语言基础R语言是一门常用于数据分析、统计建模的计算机语言,它与主流的C/C++、Java、Python等语言相比,支持更多的数据类型,例如向量、矩阵,同时提供了多种统计和数学计算方法。可以前往 https://www.r-project.org/ 下载R语言解释器,并且推荐使用 RStudio 这个R语言的集成开发环境。RStudio 可以在 https://www.rstudio.com/ 下载。

2021-10-12 19:05:09 2670

原创 规划问题的py处理

线性规划matlablingopulp解决线性规划pulp解决整数线性规划非线性规划scipy解决非线性规划其他数学建模与python⬆⬆⬆⬆⬆⬆⬆⬆⬆不仅包含基本的线性规划,非线性规划,整数规划还包含运输问题和指派问题...

2020-07-29 17:09:59 124

原创 字符串匹配

class Solution: def strStr(self, haystack: str, needle: str) -> int: n,m=len(haystack),len(needle) if m==0: return 0 if haystack==needle: return 0 for i in range(n-m+1): if haystac.

2020-06-28 23:19:21 97

原创 爬虫3-session和cookie

session和cookie前置:动态网页和静态网页静态网页静态网页就是我们上一篇写的那种 html 页面,后缀为 .html 的这种文件,直接部署到或者是放到某个 web 容器上,就可以在浏览器通过链接直接访问到了,常用的 web 容器有 Nginx 、 Apache 、 Tomcat 、Weblogic 、 Jboss 、 Resin 等等,很多很多。举个例子:https://desm...

2020-04-25 23:29:06 202

原创 爬虫3-selenium

seleniumselenium是什么:一个自动化测试工具(大家都是这么说的)selenium应用场景:用代码的方式去模拟浏览器操作过程(如:打开浏览器、在输入框里输入文字、回车等),在爬虫方面很有必要准备工作:安装selenium(pip install selenium)安装chromedriver(一个驱动程序,用以启动chrome浏览器,具体的驱动程序需要对应的驱动,在官网...

2020-04-25 23:28:34 92

原创 爬虫3-ip代理

为什么会出现IP被封网站为了防止被爬取,会有反爬机制,对于同一个IP地址的大量同类型的访问,会封锁IP,过一段时间后,才能继续访问如何应对IP被封的问题有几种套路:修改请求头,模拟浏览器(而不是代码去直接访问)去访问采用代理IP并轮换设置访问时间间隔如何获取代理IP地址从该网站获取: https://www.xicidaili.com/inspect -> 鼠标定位:...

2020-04-25 23:28:05 6638

原创 爬虫2-re

2.3 学习正则表达式 re2.3.1 为什么使用正则表达式?典型的搜索和替换操作要求您提供与预期的搜索结果匹配的确切文本。虽然这种技术对于对静态文本执行简单搜索和替换任务可能已经足够了,但它缺乏灵活性,若采用这种方法搜索动态文本,即使不是不可能,至少也会变得很困难。通过使用正则表达式,可以:- 测试字符串内的模式。 例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信...

2020-04-23 21:51:18 331

原创 爬虫2-Xpath

2.2 学习xpath2.2.1 学习目标:学习xpath,使用lxml+xpath提取内容。使用xpath提取丁香园论坛的回复内容。抓取丁香园网页:http://www.dxy.cn/bbs/thread/626626#626626 。2.2.2 Xpath常用的路径表达式:XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文...

2020-04-23 21:50:55 129

原创 爬虫2-bs4

二、学习内容2.1 Beautiful Soup库入门学习beautifulsoup基础知识。使用beautifulsoup解析HTML页面。Beautiful Soup 是一个HTML/XML 的解析器,主要用于解析和提取 HTML/XML 数据。它基于HTML DOM 的,会载入整个文档,解析整个DOM树,因此时间和内存开销都会大很多,所以性能要低于lxml。B...

2020-04-23 21:49:09 141

原创 爬虫1

互联网、HTTP互联网互联网也叫因特网(Internet),是指网络与网络所串联成的庞大网络,这些网络以一组标准的网络协议族相连,连接全世界几十亿个设备,形成逻辑上的单一巨大国际网络。它由从地方到全球范围内几百万个私人的、学术界的、企业的和政府的网络所构成。通过电子、无线和光纤等一系列广泛的技术来实现。这种将计算机网络互相连接在一起的方法可称作“网络互联”,在此基础上发展出来的覆盖全世界的全球...

2020-04-21 21:45:15 2561

原创 通配符匹配*,?

双指针必要注释写在了代码上了class Solution: def isMatch(self, s: str, p: str) -> bool: m,n=len(s),len(p) if m==0 and p=='*': return True if m==0 and n==0: ...

2020-03-30 21:54:26 312

原创 加油站

双指针从0往后遍历,当油箱里没油了就往前借。i指针负责向后遍历,j指针负责向前遍历若遍历完以后油箱里是负数那说明油不够 return -1class Solution: def canCompleteCircuit(self, gas: List[int], cost: List[int]) -> int: i,n=0,len(gas) ...

2020-03-28 17:26:59 94

原创 滑动窗口最大值

自暴自弃法class Solution: def maxSlidingWindow(self, nums: List[int], k: int) -> List[int]: n=len(nums) res=[] for i in range(n-k+1): res.append(max(nums[i:i+k...

2020-03-26 14:21:13 100

原创 跳跃游戏

贪心算法因为数组里每个元素代表着能跳跃的最大长度定义最后一位是aim然后从后往前遍历若有一个可以跳到aim的就把aim转移到这个上因为如果这个(命名为P)可以跳到aim上那么如果可以跳到P那么一定可以跳到aim上并且由于是最大步幅所以能跳到aim上的必然能跳到P上这里能挑到aim上等价于跳到P上二者是充分必要条件所以把aim转移到P上不影响结果class Solutio...

2020-03-25 20:39:32 96

原创 分饼干

排序+双指针这个真没啥解释的从胃口小的小孩下手尽可能多的弄小孩class Solution: def findContentChildren(self, g: List[int], s: List[int]) -> int: g.sort() s.sort() i,j=0,0 try: ...

2020-03-25 19:39:32 170

原创 判断子序列(子序列在主序列中是分割的)

双指针遍历直到越界若s越界说明s都出现了,即True若s没有越界说明t越界了,即遍历完t也没有发现所有s的元素即Falseclass Solution: def isSubsequence(self, s: str, t: str) -> bool: m,n=len(s),len(t) i,j=0,0 while True:...

2020-03-25 19:15:41 128

原创 恢复二叉搜索树

递归+排序搞了一天的莫里斯遍历,没搞明白,就开始递归。递归中序遍历,把节点归到到数组中,然后排序。然后把数值依次分配给节点# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None...

2020-03-24 23:53:23 129

原创 不同的二叉搜素树

这个题读完以后,我对语法结构不感兴趣,但是我对这个二叉搜索树的个数起了浓厚的兴趣,总觉得冥冥中蕴含着数学规律。上一题是 不同的二叉搜索树Ⅱ我就找了找 不同的二叉搜索树Ⅰ这个题 输入一个数,然后再输出一个数字这里引入卡特兰数其中介绍了G(n)和F(i,n)。假设n个节点的二叉树搜索树的个数是Gn,以 i(1 <= i <= n) 为根节点的二叉搜索树个数定义为F(i,n...

2020-03-22 19:55:05 127

原创 二叉树的中序遍历

递归# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def inorderTr...

2020-03-20 20:45:36 107

原创 二叉树的最大深度

递归# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def maxDepth(...

2020-03-20 19:43:53 51

原创 对称二叉树

递归# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def isSymmetr...

2020-03-20 15:05:37 76

原创 相同的树

递归到了二叉树的时候了这个结构会经常用递归的递归就会让代码思路变的很简单这个题就是递归# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.r...

2020-03-19 17:24:29 56

原创 正则表达式匹配

回溯我理解的就是递归,一直在判断“*”的存在,最后递归得出结果class Solution: def isMatch(self, s: str, p: str) -> bool: if not p: return not s f= bool(s and p[0] in {s[0],'.'}) if le...

2020-03-19 02:16:40 95

原创 最小栈

class MinStack: def __init__(self): """ initialize your data structure here. """ self.stack=[] self.helper=[] def push(self, x: int) -> None: ...

2020-03-18 17:52:09 62

原创 最长回文字符串

中心扩散回文字符串一定存在一个中心这里分情况讨论:1.这个回文字符串长度是奇数:那么他中心就在某一个字符上2.这个回文字符串长度是偶数:那么他中心就在俩字符之间我们遍历两次第一次只考虑奇数情况,把遍历的字符当作中心然后扩散判断,找到最长的那个;第二次只考虑偶数情况,把遍历的字符串后面的缝隙当作中心然后进行扩散判断,找到最长的那个。注意:一定要注意边界问题,所以在进行扩散判断之前要...

2020-03-17 16:20:22 170 1

原创 最长无重复字符串

我看到题的第一反应是hash表+动态规划一次遍历,用hash表记录遍历过的元素及其索引号用hash表判断有无重复元素而最大长度还涉及到字符串的起点问题所以用动态规划这两个参数——起点和最大长度我们用left和l来表示的时间复杂度:O(n)class Solution: def lengthOfLongestSubstring(self, s: str) -> int:...

2020-03-14 00:24:19 74

原创 有效括号

栈排序!最先进最后出。class Solution: def isValid(self, s: str) -> bool: stack=[] hashtable={'(':')','{':'}','[':']'} for i in s: if i in hashtable: ...

2020-03-13 21:14:04 205

原创 最长公共前缀

一开始想的初始思路就是遍历所有字符串一次次的判断时间复杂度:O(n*k)n是字符串数组的大小,k是字符串中最短的长度class Solution: def longestCommonPrefix(self, strs: List[str]) -> str: i,j=0,1 n=len(strs) re='' ...

2020-03-13 20:38:53 106

原创 罗马数字转整数

一次遍历,只要满足左边小于右边,则减去;如若不然,则加上class Solution: def romanToInt(self, s: str) -> int: hashtable={'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000} n=len(s) re=0 ...

2020-03-12 15:12:13 75

原创 合并K个排序链表

思路:分治定义一个合并两个的函数,然后反复使用以达到快速合并的效果。# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def merg...

2020-03-12 13:28:10 100

原创 删除链表倒数第n个元素

第一想法就是双指针一次遍历。# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def removeNthFromEnd(self, h...

2020-03-10 23:39:28 217

原创 两数相加(链表逆序)

正常加法逻辑。# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def addTwoNumbers(self, l1: ListNode...

2020-03-06 00:33:20 253

原创 环形链表的判断

快慢指针。一个走两个格,一个走一个。若有闭环必相遇。# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def hasCycle(se...

2020-03-06 00:28:42 89

原创 删除排序链表重复元素

# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def deleteDuplicates(self, head: ListNode) -...

2020-03-05 23:59:00 64

原创 合并两个有序链表

好好体会链表的魅力。。。# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def mergeTwoLists(self, l1: Lis...

2020-03-05 23:33:14 79

原创 买卖股票最佳时期

这个题dp不假,但真正的难点是因为他要动态规划不断最优化的不只一个最后的最优解,和这最优解相关的参数也在动态规划着。这里我定义了四个参数:first_in,first_pro,second_in,second_pro。first_in:第一次买入的价格first_pro:第一次卖出后赚的利益second_in:第二次买入的价格-第一次赚的利益second_pro:总共赚的class ...

2020-03-05 17:42:08 109

原创 多次买卖股票最大利益

从后向前遍历,差大于0就要这钱,差<0就不要。思路很简单。。。四行代码。。。。。。。。class Solution: def maxProfit(self, prices: List[int]) -> int: n,result=len(prices),0 for i in range(n-1,0,-1): result...

2020-03-04 22:34:03 275

原创 最接近的三数之和

排序后for循环有规律的移动i指针,再用双指针l,r移动,遍历。不断判断差距,直到遍历完找到最优解。class Solution: def threeSumClosest(self, nums: List[int], target: int) -> int: n=len(nums) nums.sort() if n<3: ...

2020-03-04 22:03:45 65

空空如也

空空如也

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

TA关注的人

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