自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode122买卖股票

买卖股票的最佳时机 II给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。这里我们只要注意就是比较每一个相邻的极大值和前一个极小值的差的总和就是我们需要的值。class Solution:def maxProfi...

2020-03-25 22:37:18 107

原创 python第22天

恢复二叉搜索树二叉搜索树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。示例 1:输入: [1,3,null,null,2]1/32输出: [3,1,null,null,2]3/12示例 2:输入: [3,1,4,null,null,2]3/ 1 4/2输出: [2,1,4,null,null,3]2/ 1 4/3...

2020-03-24 22:33:56 103

原创 python第22天

不同的二叉搜索树 II给定一个整数 n,生成所有由 1 … n 为节点所组成的二叉搜索树。示例:输入: 3输出:[[1,null,3,2],[3,2,null,1],[3,1,null,null,2],[2,1,3],[1,null,2,null,3]]解释:以上的输出对应以下 5 种不同结构的二叉搜索树:1 3 3 2 ...

2020-03-23 22:29:24 109

原创 python第20天

二叉树的中序遍历这里先写一个大家都比较熟悉的递归算法class Solution: def inorderTraversal(self, root: TreeNode) -> List[int]: res = [] def helper(root): if not root: return ...

2020-03-22 21:51:43 89

原创 python练习第19天

二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,15,7],这个就是通过递归class Solution:def maxDepth(self, root):“”":type root: TreeNode:rtype: int...

2020-03-21 18:56:36 100

原创 python算法第18天

给定一个二叉树,检查它是否是镜像对称的。关于递归的问题主要就是找到递归公式,这里呢就是左子树和右子树进行的递归lass Solution(object): def isSymmetric(self, root): if not root: return True def dfs(left,right): i...

2020-03-20 20:03:35 73

原创 python练习第19天

两个相同的树class Solution: def isSameTree(self, p: TreeNode, q: TreeNode) -> bool: if p == None and q == None: return True if p == None or q == None: return ...

2020-03-19 19:25:14 77

原创 python学习第17天

给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *。这里涉及到动态匹配和回溯算法,我在学习时候也不太...

2020-03-18 21:47:46 134

原创 python第17天

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所...

2020-03-17 19:06:56 70

原创 算法练习第16天

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所...

2020-03-16 21:38:23 78

原创 leetcode第15天

给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。class Solution(object): def isValid(self, s): stack = [] judge = {'()',...

2020-03-15 19:53:23 63

原创 python第13天

最长公共前缀难度简单910收藏分享切换为英文关注反馈编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。我们这个问题通过纵向搜索来解决,...

2020-03-14 21:02:48 56

原创 leetcode算法练习13天

罗马数字转整数难度简单822收藏分享切换为英文关注反馈罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M ...

2020-03-13 19:59:16 146

原创 算法练习第11天

合并K个排序链表难度困难515收藏分享切换为英文关注反馈合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[1->4->5,1->3->4,2->6]输出: 1->1->2->3->4->4->5->6今天的题目我没什么思路就大致的参考了解答用C++写了一...

2020-03-12 22:40:56 121

原创 python练习第10天

删除l链表中倒数第n值这里用了双指针的巧妙运用就是,第一个指针先运动n+1个距离然后使得连两个指针之间的距离为n,然后一起运动使这样的距离保持到末尾这样就找到了那个第n个值class Solution: def removeNthFromEnd(self, head: ListNode, n: int) -> ListNode: a = head ...

2020-03-11 19:03:06 75

原创 leetcode第十天算法练习

给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。这里比较重要的是两点,一个是注意最后两个位数相加仍会超过10导致的进位问题,一个是链表递归方法的运用class Solution: ...

2020-03-10 20:02:37 89

原创 leetcode第八天python算法链表

给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。快慢指针如果,快指针能追到慢指针就说明有环class Solution:def hasCycle(self, head: ListNode) -> bool:slow = headquick = head...

2020-03-09 22:04:42 89 1

原创 leetcode算法练习第7天

删除排序链表中的重复元素难度简单给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次这是一道链表的基础题,考验我们对基础链表功能的应用class Solution: def deleteDuplicates(self, head: ListNode) -> ListNode: p = head if p==None or p.ne...

2020-03-08 19:07:20 81

原创 python练习第7天

今天的算法比较简单,将两个有序数组合并,一个递归可以解决,不过我看了看我以前的做法,发现java是要比python快一些,不知道是不是差异class Solution: def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode: res = ListNode(None) node ...

2020-03-07 20:37:51 102

原创 leetcode股票问题,第五天

给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [3,3,5,0,0,3,1,4]输出: 6解释: 在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 =...

2020-03-06 20:27:29 97

原创 python3算法训练第五天

Given an array nums of n integers and an integer target, find three integers in nums such that the sum is closest to target. Return the sum of the three integers. You may assume that each input would ...

2020-03-05 20:06:08 89

原创 python算法练习第四天,三数求和

给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。 示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]我看到题目一开...

2020-03-04 19:35:29 728

原创 leetcode练习第三天python

给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素均为...

2020-03-03 09:52:27 84

原创 寻找有序数组中位数

给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]则中位数是 (2 + 3)...

2020-03-02 20:24:43 272

原创 算法加强练习第一天(python)

用python来解答一下我前几个月做过的算法练习。class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: n=len(nums) if n<2: return None map={} for ...

2020-03-01 12:07:31 261

原创 逻辑斯蒂回归

有一些数据点,我们用一条直线对这些点进行拟合,这个拟合的过程称作回归。逻辑斯蒂回归是针对线性可分问题的一种易于实现而且性能优异的分类模型,是使用最为广泛的分类模型之一。假设某件事发生的概率为p,那么这件事不发生的概率为(1-p),我们称p/(1-p)为这件事情发生的几率。取这件事情发生几率的对数,定义为logit§,所以logit§为我们需要确定对应的系数————————————————...

2019-11-23 21:05:11 102

原创 leetcode学习机器算法

朴素贝叶斯公式条件概率公式P(A|B) = P(B|A) P(A) / P(B)即在b事件发生之前,我们对a事件概率的判断。通过这我们可以通过这来学习贝叶斯分类器核心思想是选择高概率对应的类别通过先验概率和条件概率,来计算后验概率# encoding=utf-8import pandas as pdimport numpy as npimport cv2import tim...

2019-11-23 20:37:00 138

原创 python学习

1.模块容器->数据的封装函数->语句的封装类->方法和属性的封装模块->程序文件模块是一个包含所有你定义的函数和变量的文件2.命名空间内置命名空间:python自带自动运行全局命名空间:不同模块的全局命名空间彼此独立本地命名空间:模块内的函数或者类所定义的命名空间3.导入模块创建一个模块第一种:import模块名第二种:from模块名import...

2019-11-05 17:46:31 50

原创 python学习

1.魔法方法魔法方法总是被双下划线包围,例__init__第一个参数cls类方法或者self。魔法方法会在适当的时候自动调用算术运算符通过函数来代替类3.反算术运算符比算法运算符多了一个r当文件左操作不支持相应的操作时被调用4.增量运算符5.一元运算符6.属性访问7. 迭代器迭代器时一个可以记住遍历位置的对象迭代器只能前进不能后退字符串,列表或者元组都可以用于创建迭代器...

2019-11-04 21:01:08 57

原创 python学习10天

1.对象封装:信息隐蔽技术通过class定义类,关键字继承:子类自动共享父类之间数据和方法的机制多态不同对象对同一方法响应不同的行动class people(Animal):class Pig(Animal):2.self是self即c++的this指针3.python类由一个——init–(self[param1,param2])4公有私有在变量函数名前面加–两个下划...

2019-11-02 20:33:47 157

原创 python第九天

while else和for else和正常的没有区别,else中的语句会在循环执行完的情况下执行try except else语句在昨天的学习中已经提到过了2.简洁的with语句with保证文件之类的对象在使用完之后会正确的执行的清理方式...

2019-10-31 21:01:53 66

原创 第8天python学习

异常处理##try except语句首先,执行try语句如果由异常,且异常的类型和except之后的名称相符执行except子句,没有异常则对其进行忽略。异常未找到匹配类型则返回上层try.finally语句不论,try结果如何都会执行finally语句raise语句抛出一个指定的异常。...

2019-10-30 21:12:29 70

原创 python学习第七天

打开文件open(file,mode=‘r’,buffering=-1,encoding=None,errors=None,newline=None)file时文件路径f=open(‘一二三.txt’)文件对象方法fileobject.close()关闭一个一打开的文件fileobject.read([read])用于从文件读取指定的字符串,如果未给定或为负则读取所有os模块中关于文...

2019-10-28 22:38:48 65

原创 python学习第7天

1.字典1.序列是以连续的整数为索引,与此不同的是,字典以关键字为索引。2.字典是python唯一的一个映射类型,字符串。用id(x)函数,对x进行某种操作比较前后的id,如果不一样则可变。通过hash(x),不报错证明x可被哈希即不可变。{ 元素1,元素2,元素3,。。。 }创建和访问字典。字典是无序的键dict1={1:‘2’,3:‘4’}dict(obj)函数用于创建一个...

2019-10-27 18:49:57 85

原创 python第5天学习

1.函数函数以def开头,后面接函数名和圆括号()。函数执行的代码以冒号为起始,并且缩进。return[]结束函数选择返回一个值给调用方不用表达式return相当于返回none。可以没有返回值。 def function(d): "ddd" return(c) 函数的调用temp=function(s)#wemp是sprint(t...

2019-10-26 21:00:06 73

原创 leetcode第四天任务

1.字符串python可以用成对的单引号和双引号。tl='lkj't2="holle"\n换行\t,横向制表符\r回车原始字符串需要在字符串前边加一个英文字母rpython三引号允许一个字符串跨多行,字符串中间可以包含换行指标符等特殊字符字符串的切片1.具有不可修改性2.从0开始算3.算头不算尾,start:end4.索引可正可负字符串的常用内置方法capitali...

2019-10-24 19:31:49 105

原创 python第三天学习

今天学习的是容器类型的数据,例如:列表,元组,字典,集合,字符串。列表1.列表是有序集合,可以保存任意数量和任意类型的python对象。2.通过逗号将彼此隔离开number=[1,2,3,4,5,6]#[1,2,3,4,5,6]列表中的元素可以更改,所以可以对他进行操作。append()在列表末尾添加新的对象一次只能加一个如果append中的元素是list那么他会被当作一个整体...

2019-10-22 23:01:13 128

原创 python学习第二天

1.条件语句我在这里列举的是python语言和其他语言的不一样的地方,一样的地方就不说。if1.单个if语句可以通过and or not实现多重条件判断if 2>1 and not 2>3;2.python使用缩进而不用大括号来标记代码块所以我们在使用的时候要注意ps:else后需要加冒号例如 if 2>3: print('haha')...

2019-10-21 20:27:40 65

原创 python学习第一天

变量:变量类似为数据的标签;python无需声明可以直接赋值;变量名之间不区分大小写。其他时候python关于变量的运用与其他语言类似。运算符分为操作运算符和比较运算符操作运算符可以分为+,-,*,/比较特殊的是表示xy,返回值是x的y次幂// 表示的是相除后向下取整比较运算符和其他语言类似我在这里就不记录了。优先级的话也与其他语言类似数据类型常见数据类型 为整型,浮...

2019-10-20 17:23:21 59

原创 leetcode第50天

给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例 1:输入: “Let’s take LeetCode contest”输出: “s’teL ekat edoCteeL tsetnoc”注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。来源:力扣(LeetCode)链接:https://leetcode-cn.com/...

2019-10-14 22:22:56 80

空空如也

空空如也

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

TA关注的人

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