自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (1)
  • 收藏
  • 关注

原创 leetcode -- 买卖股票的最佳时机

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是...

2018-12-28 20:59:37 205

原创 leetcode 217. 存在重复元素

题目给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。示例 1:输入: [1,2,3,1]输出: true示例 2:输入: [1,2,3,4]输出: false示例 3:输入: [1,1,1,3,3,4,3,2,4,2]输出: true思路一种用字典统计次数,一种用集合判断是否重复...

2018-12-27 21:03:37 94

原创 leetcode数组--最少移动次数使数组元素相等

题目给定一个长度为 n 的非空整数数组,找到让数组所有元素相等的最小移动次数。每次移动可以使 n - 1 个元素增加 1。示例:输入:[1,2,3]输出:3解释:只需要3次移动(注意每次移动会增加两个元素的值):[1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]思路一开始自己对其理解有偏差,所有的数与最大的数比较,每...

2018-12-25 19:58:12 1333

原创 LeetCode数组867. 转置矩阵

题目给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。示例 1:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]示例 2:输入:[[1,2,3],[4,5,6]]输出:[[1,4],[2,5],[3,6]]思路矩阵的转置就是从行变成列, 列变成行先定义一个最...

2018-12-24 21:38:07 138

原创 leetcode 33. 搜索旋转排序数组

题目假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是 O(log n) 级别。示例 1:输入: nums = [4,5,6,7,0,1,2], ...

2018-12-22 20:34:48 104

原创 leetcod数组26. 删除排序数组中的重复项

题目给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 n...

2018-12-21 21:07:09 184

原创 LeetCode数组 873. 最长的斐波那契子序列的长度

题目如果序列 X_1, X_2, …, X_n 满足下列条件,就说它是 斐波那契式 的:n >= 3对于所有 i + 2 <= n,都有 X_i + X_{i+1} = X_{i+2}给定一个严格递增的正整数数组形成序列,找到 A 中最长的斐波那契式的子序列的长度。如果一个不存在,返回 0 。(回想一下,子序列是从原序列 A 中派生出来的,它从 A 中删掉任意数量的元素(也...

2018-12-20 16:51:28 530

原创 LeetCode数组870 优势洗牌

题目给定两个大小相等的数组 A 和 B,A 相对于 B 的优势可以用满足 A[i] > B[i] 的索引 i 的数目来描述。返回 A 的任意排列,使其相对于 B 的优势最大化。示例 1:输入:A = [2,7,11,15], B = [1,10,4,11]输出:[2,11,7,15]示例 2:输入:A = [12,24,8,32], B = [13,25,32,11]输出:[...

2018-12-20 12:51:34 270

转载 python-numpy

文章目录数组的创建一维数组的创建二维数组的创建特殊数组数组的属性和函数数组元素的获取--普通索引、切片、布尔索引和花式索数组的创建numpy中使用array()函数创建数组,array的首个参数一定是一个序列,可以是元组也可以是列表。一维数组的创建可以使用numpy中的arange()函数创建一维有序数组,它是内置函数range的扩展版In [1]: import numpy as ...

2018-12-18 21:49:26 341

原创 python(day)—循坏和判断

文章目录条件语句条件语句Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。Python 编程中 if 语句用于控制程序的执行,基本形式为:if 判断条件:执行语句……elif 判断条件:执行语句else:执行语句……...

2018-12-18 20:37:15 204

原创 leetcode954二倍数对数组

题目给定一个长度为偶数的整数数组 A,只有对 A 进行重组后可以满足 “对于每个 0 <= i < len(A) / 2,都有 A[2 * i + 1] = 2 * A[2 * i]” 时,返回 true;否则,返回 false。示例 1:输入:[3,1,3,6]输出:false示例 2:输入:[2,1,2,6]输出:false示例 3:输入:[4,-2,2,-4]...

2018-12-18 16:19:21 289

原创 LeetCode234 回文链表

题目请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true代码# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val ...

2018-12-17 20:49:18 85

原创 集成学习--随机森林

文章目录1.集成学习1.1概念1.2 个体学习器1.3Boosting(串行)1.4 Bagging(并行)1.集成学习1.1概念集成学习(ensemble learning)它本身不是一个单独的机器学习算法,而是通过构建并结合多个机器学习器来完成学习任务。集成学习可以用于分类问题集成,回归问题集成,特征选取集成,异常点检测集成等等。集成学习有两个主要的问题需要解决第一是如何得到若干...

2018-12-17 19:46:59 362

原创 python Day1(数据类型)

文章目录数据类型1不可变数据1.1Number(数字)数据类型1不可变数据1.1Number(数字)在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。int(有符号整型)【使用int】float(浮点型)【使用float】complex(复数)【使用complex】bool布尔类型在 Python2 中是没有布尔型的,它...

2018-12-17 19:16:13 145

原创 LeetCode 725 分隔链表

题目给定一个头结点为 root 的链表, 编写一个函数以将链表分隔为 k 个连续的部分。每部分的长度应该尽可能的相等: 任意两部分的长度差距不能超过 1,也就是说可能有些部分为 null。这k个部分应该按照在链表中出现的顺序进行输出,并且排在前面的部分的长度应该大于或等于后面的长度。返回一个符合上述规则的链表的列表。== 举例: 1->2->3->4, k = 5 ...

2018-12-16 19:54:38 338

原创 leetcode160相交链表

题目编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点的值为 8...

2018-12-16 19:28:20 628

原创 贪吃蛇游戏开发

设计思路1.有一个地盘,四周有墙2.有四个方形来组成一条蛇,蛇在此地盘内活动3随机生成一个食物,蛇吃到食物后身体变长。4蛇遇到墙时死亡5键盘上下来控制蛇的行走方向、有待完善代码#!/user/bin/env python#-*- coding:utf-8 -*-# @Time : 2018/12/13 19:21# @Author : 刘# @Si...

2018-12-15 18:35:36 9259 9

原创 anaconda

Anaconda的下载   可以从官网https://www.anaconda.com/download/下载Anaconda的安装程序,在该页面选择你电脑所对应的系统(Windows、macOS or Linux)以及操作系统位数(64位 or 32位)。1.2 Anaconda的安装   下载后的文件为.exe文件,双击该文件进入安装界面。   1、 依次点击Next –>...

2018-12-14 19:00:47 155

原创 leetcode86分隔链表

题目给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入: head = 1->4->3->2->5->2, x = 3输出: 1->2->2->4->3->5思路新建两个链表,给定的特定值。对链表分隔,将小于特定值的节点...

2018-12-14 18:42:41 192

原创 决策树面试题

决策树几种常用的算法已经如何选择划分的特征常用的几种决策树算法有ID3、C4.5、CART等;其中ID3使用的是信息熵增益选大的方法划分数据,C4.5是使用增益率选大的方法划分数据,CART使用的是基尼指数选小的划分方法划分特征的优缺点ID3:该算法是以信息论为基础,以信息熵和信息增益度为衡量标准,从而实现对数据的归纳分类。ID3算法往往偏向于选择取值较多的属性,而在很多情况下取值较多的属...

2018-12-13 21:41:30 2373

原创 LeetCode 142 环形链表 II python

题目给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。说明:不允许修改给定的链表。示例 1:输入:head = [3,2,0,-4], pos = 1输出:tail connects to node index 1...

2018-12-13 21:11:01 223

原创 递归

递归定义程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。条件边界条...

2018-12-13 18:13:41 128

原创 【Leetcode】61.旋转链表

题目给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4-

2018-12-12 21:19:04 112

原创 决策树

文章目录基本概念决策树的损失函数决策树学习策略决策树的学习过程特征选择方法(信息论)熵联合熵基本概念决策树是一类常见的机器学习算法,是一种简单但是广泛使用的分类器。顾名思义,决策树基于树结构进行决策。一般的,一颗决策树包含一个根结点、若干个内部结点和若干个叶结点;叶结点对应于决策结果,其他每个结点则对应于一个属性测试;每个结点包含的样本集合根据属性测试的结果被划分到子结点中;根结点包含样本全集...

2018-12-12 20:18:26 865

原创 排序

文章目录排序的简介排序的分类1交换式排序法:1.1 冒泡排序(Bubblesorting)的基本思想是:1.2快速排序法2选择式排序法排序的简介排序是将一群数据,按照指定的顺序进行排列的过程。排序(Sorting)是数据处理中一种很重要的运算,同时也是很常见的运算,一般数据处理工作的25%的时间都是在进行排序。简单地讲,排序就是把一组记录(元素)按照某个域的值的递增或者递减的次序重新排列的过程...

2018-12-12 16:58:01 173

原创 leetcode142 对链表进行插入排序

题目对链表进行插入排序插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。插入排序算法:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。重复直...

2018-12-11 20:24:46 100

原创 LeetCode 二叉树

二叉树二叉树是树的特殊一种,具有如下特点:1、每个结点最多有两颗子树,结点的度最大为2。2、左子树和右子树是有顺序的,次序不能颠倒。3、即使某结点只有一个子树,也要区分左右子树。特殊的二叉树斜树所有的结点都只有左子树(左斜树),或者只有右子树(右斜树)。这就是斜树,应用较少满二叉树所有的分支结点都存在左子树和右子树,并且所有的叶子结点都在同一层上,这样就是满二叉树。就是完美圆满的意思...

2018-12-11 18:12:36 220

原创 Leetcode 92反转链表

题目反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤ m ≤ n ≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL思路进行一遍遍历,把第m到n个元素进行翻转,即依次插入到第m个节点的头部。cl...

2018-12-10 21:56:17 108

原创 LeetCode--线性表(206)

文章目录线性表1.定义:2.表现形式2.1 顺序表示(顺序表)2.2链表结点单链表如图:单链表基本操作原理题目思路pythonjava线性表1.定义:零个或多个数据元素的有限序列。【线性表】:某类元素的集合并且记录着元素之间一种顺序关系,是最基本的数据结构之一,例如:list 和 tuple2.表现形式2.1 顺序表示(顺序表)概念:用一组地址连续的存储单元依次存储线性表的数据元素,...

2018-12-10 14:26:52 195

原创 逻辑回归面试题

Q1:逻辑回归的损失函数,为什么要用这个损失函数逻辑回归的损失函数是它的极大似然函数。损失函数一般有四种,平方损失函数,对数损失函数,HingeLoss0-1损失函数,绝对值损失函数。将极大似然函数取对数以后等同于对数损失函数。在逻辑回归这个模型下,对数损失函数的训练求解参数的速度是比较快的。Q2:为什么不选平方损失函数的呢?其一是因为如果你使用平方损失函数,你会发现梯度更新的速度和s...

2018-12-10 10:54:53 980

原创 逻辑回归补充

逻辑回归的优缺点优点1、它是直接对分类可能性建模,无需事先假设数据分布,这样就避免了假设分布不准确问题。2、它不仅预测类别,而且可以得到近似概率预测,这对许多概率辅助决策的任务很有用。3、对率函数是任意阶可导凸函数,有很好的数学性质,现有许多的数值优化算法都可以直接用于求解。缺点对数据和场景的适应能力有局限性,不如决策树算法适应性那么强多分类学习 我们可以利用二分类...

2018-12-10 10:27:49 340

原创 leetcode 141判断是否有环

题目给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos是 -1,则在该链表中没有环。示例 1:输入:head = [3,2,0,-4], pos = 1 输出:true 解释:链表中有一个环,其尾部连接到第二个节点。示例 2:输入:head = [1,2], pos = 0 输出:tru...

2018-12-09 16:23:09 315

原创 leetcode 1两数之和以及哈希思想

题目思想:方法一

2018-12-08 23:09:25 236

原创 leetcode83/82

#题目给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3#思想判断当前值与下一个值是否相同,相同则修改节点的next指向下一个节点的next,重复判断。

2018-12-08 20:19:14 234

原创 CSDN-markdown编辑器

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2018-12-08 20:10:05 75

原创 Leetcode 23--mergeKList

题目合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入: [   1->4->5,   1->3->4,   2->6 ] 输出: 1->1->2->3->4->4->5->6思想分治法:设拆分的层数为m,共有链表n个,则,则得到,拆分后每一层的时间复杂度与链表的长度呈线性关系,则...

2018-12-07 20:22:18 230

原创 LeetCode21-合并两个有序链表

题目:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4思想:1.确定是否两个链表是否含都为空链表2.在两个链表无空链表下确定第一个节点,比较链表1与链表2的第一个节点的值,将值小的节点保存下...

2018-12-06 21:23:09 151

原创 LeetCode19 --removeNthFromEnd

1.链表链表由一系列不必在内存中相连的结构构成,这些对象按线性顺序排序。每个结构含有表元素和指向后继元素的指针。最后一个单元的指针指向NULL。为了方便链表的删除与插入操作,可以为链表添加一个表头。  删除操作可以通过修改一个指针来实现。插入操作需要执行两次指针调整。 2.问题描述给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一...

2018-12-05 18:48:22 190

原创 Leetcode46-全排列

class Solution(object): def permute(self, nums): """ :type nums: List[int] :rtype: List[List[int]] """ self.res = [] sub = [] self.dfs(nums...

2018-12-04 19:55:22 102

原创 Leetcode7

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123 输出: 321示例 2:输入: -123 输出: -321示例 3:输入: 120 输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231,  231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。pythonclass...

2018-12-04 19:46:15 84

dm03_namespace.cpp

dm03_namespace.cpp

2021-12-11

空空如也

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

TA关注的人

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