自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL语言总结--2

第12章:汇总数据12.1 聚集函数SQL 聚集函数函数说明AVG()返回某列的平均值COUNT()返回某列的行数MAX()返回某列的最大值MIN()返回某列的最小值SUM()返回某列的值之和12.1.1 AVG()函数: SELECT AVG(prod_price) AS avg_price FROM products;...

2019-05-05 21:28:00 144

原创 数据聚合与分组操作

GroupBy机制import numpy as npimport pandas as pddf = pd.DataFrame({'key1':['a','a','d','d','a'], 'key2':['one','two','one','two','one'], 'data1': np.random.randn(...

2019-04-30 17:14:50 433

原创 Leetcode.92.翻转链表

原题链接:https://leetcode-cn.com/problems/reverse-linked-list-ii/翻转列表:反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤ m ≤ n ≤ 链表长度。因为要对链表的内容进行修改,所以在头结点之前添加一个dummy节点,可以简化代码。设置pre节点为当前的节点,初始化pre = dummy,从头节点到迭代m次...

2019-04-22 17:44:53 147

原创 完全背包与多重背包

完全背包问题提出问题:现在有NNN个物品,和一个容量为VVV的背包,每一种物品都有无限件可以使用。第iii种物品的费用是CiC_{i}Ci​,价值是WiW_{i}Wi​.求解将那些物品装入背包,在总重量不超过背包容量的情况下,使得背包内的物品价值最大。求解问题:对于每一个物品,我们有无限件,对于每一个物品,问题已经不是取或者是不取,而是选取0件、取1件、取2件直到取⌊V/Ci⌋\left\...

2019-04-18 23:00:50 262

原创 mySQL语言总结--1

1.使用MySQL。显示数据库,SHOW DATABASES;使用数据库,USE databasename;显示数据库的列表名,SHOW TABLES;显示列表的的信息,SHOW COLUMNS FROM customers/DESCRIBE customers;2.检索数据。检索单个列,SELECT prod_num FROM products;检索多个列,SELECT pr...

2019-04-18 22:56:42 100

原创 Leetcode.10&44

10.正则表达式匹配原题链接:https://leetcode-cn.com/problems/regular-expression-matching/。给定一个字符串 (s) 和一个字符模式 §。实现支持 ‘.’ 和 ‘*’ 的正则表达式匹配。‘.’ 匹配任意单个字符。‘*’ 匹配零个或多个前面的元素。这个问题可以使用使用导入的re包,来进行正则表达式匹配,但是这样除了熟悉一下re包的...

2019-03-25 22:46:53 162

原创 01背包问题

提出问题现在我们有一个背包,需要往里边装一些物品, 这个背包的容量是固定的,每一个物品有它的重量和价值。现在我们假设,有以下4个物品。编号i重量w价值v123234345456背包的容量是8,现在在里边装物品,找到使背包中价值最大的装物品的方法。问题分析:现在我们有n个物品,背包的容量为m。对于每一个物体,我们可以将他们装到背包...

2019-03-24 20:24:27 161

原创 理解动态规划

通常我们需要按照如下4个步骤设计一个动态规划的算法刻画一个最优解的结构特征递归地定义最优解的值计算最优解的值,通常采用置底向上的方法利用计算出的信息构造一个最有解下面开始理解动态规划,从动态规划的钢条切割例子开始1.钢条切割长度i12345678910价格pip_{i}pi​1589101717202430给定如上的...

2019-03-16 16:28:05 225

原创 通过Scikit-Learn来实现支持向量机的各种算法

机器学习实战阅读笔记软间隔分类在Scikit—learn的SVC类中通过超参数C来控制如果有违例的情况的接受度。C值越小违例也会越多。在使用软间隔分类的时候,可以使用降低C来进行正则化。下面加载鸢尾花数据集,缩放特征,然后训练一个线性SVC模型。使用LinearSVC类,C=0.1,hinge损失函数。import numpy as npfrom sklearn import datas...

2019-03-15 23:52:45 458

原创 熟悉一个端对端的机器学习项目流程

《机器学习实战》阅读笔记读入数据import pandas as pdimport osHOUSING_PATH = r"handson-ml-master\datasets\housing"def load_housing_data(housing_path = HOUSING_PATH): csv_path = os.path.join(housing_path, "ho...

2019-03-06 17:23:19 321

原创 LeetCode.79.单词搜索

原题链接:https://leetcode-cn.com/problems/word-search/。题目要求我们从一个字母表中找到一个字符串。思路很简单,我们遍历每一个字母表,在字母表的每一个位置进行深度优先搜索。当搜索的全部字符串就意味着搜索完成,返回True,如果搜索过程中,出现索引越界,或者搜索字符不匹配或者这个字符在当前的搜索过程中已经为访问过,那么说明搜索失败。返回False。下...

2019-03-04 23:35:33 102

原创 LeetCode.208.前缀树

原题链接:https://leetcode-cn.com/problems/implement-trie-prefix-tree/submissions/。构建前缀树/字典树。下面我们学习一下字典树。令S为一个来自字母表∑\sum∑的s个字符的集合。S的标准字典树是一个具有以下特性的有序数T.除了根之外的T的每个节点,都用∑\sum∑中的字符做标签。T的内部节点的孩子节点有不同的标签T...

2019-03-02 23:04:27 179 1

原创 机器学习中关于性能度量的一些概念

1.查准率查全率与F1首先我们考虑一个二分类问题,可以根据真实类别与预测类别分为:真正例、假正例、真反例、假反例。我们建立如下图所示的表格:查准率是这样定义的:P=TPTP+FPP = \frac{TP}{TP+FP}P=TP+FPTP​查全率是这样定义的:R=TPTP+FNR = \frac{TP}{TP+FN}R=TP+FNTP​查准率和查全率是一组相互矛盾的变量,差准率关注的是查出的...

2019-03-01 22:54:56 282

原创 LeetCode.140.单词拆分II

原题链接:https://leetcode-cn.com/problems/word-break-ii/。这个题是139.单词拆分的拓展,要将所有的可能情况输出。这里同样用动态规划的思想输出一个状态表,迭代式和单词拆分的一样。然后利用dfs算法遍历,输出句子结果。这个思路与131.分割回文串思想完全相同。下面贴python代码片。class Solution(object): d...

2019-02-28 23:05:38 294

原创 LeetCode.139.单词拆分

原题链接:https://leetcode-cn.com/problems/word-break/。这个题可以利用动态规划的思想来做,首先建立一个动态规划表,dp[length+1],(长度接下来再解释),dp[i] = True表示的是前i位(不包括i)是可以用单词字典来表示的。因为要建立一个开头的辅助点,它的意义是空串也是单词字典的一个值,可以简化代码。所以初始情况为dp[0] = T...

2019-02-28 22:58:33 122

原创 LeetCode.131.分割回文串

原题链接:https://leetcode-cn.com/problems/palindrome-partitioning/。方法一:采用简单的递归法。例如对于一个字符串:aad.首先截取第一个字符a,是回文串:然后判断第二个字符a,是回文串,继续判断第三个字符b,是回文串,最后到达结束条件,所以结果添加这个子串集。判断第二个字符串ab,不是回文串,就...

2019-02-28 22:50:26 146

原创 LeetCode.125.验证回文串

原题链接:https://leetcode-cn.com/problems/valid-palindrome/。回文串就是一个正着读,和反着读都是一样的字符串。解题思路,将字符串反转判断字符串是否一样。这里介绍python的两个函数:filter() :函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为...

2019-02-28 20:52:16 75

原创 集成学习中的AdaBoost

学习《统计学习方法》、《机器学习实战》以及《机器学习》有关集成方法的内容,做的学习笔记。以便复习。集成学习的介绍集成学习的基本思想:集成学习通过构建并结合多个学习器来完成学习任务。集成学习的一般结构:先产生一组“个体学习器”,再用某种策略将他们结合起来。利用通俗的话来说:我们想象一个决定场景。由多个专家做出决断总会比单个专家做出的决断更具有准确性。个体学习器就代表的是单个专家,综合考...

2019-02-26 18:02:54 104

原创 LeetCode.31. 下一个排列

原题链接:https://leetcode-cn.com/problems/next-permutation/。不太清楚下一个排列是什么意思,直接参考官方给出的解题步骤。同样举一个例子:对于一个列表:1 3 4 2 7 5 3 1第一步从列表的末尾开始向前找到一个比后一个数小的数。就是红色标识数字21 3 4 2 7 5 3 1然后找到2以前从后往前第一个比2大的数就是3.1 3...

2019-02-25 17:31:03 94

原创 LeetCode.129. 求根到叶子节点数字之和

原题链接:https://leetcode-cn.com/problems/sum-root-to-leaf-numbers/。利用递归的思想求解本题:下面是python3代码:# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.v...

2019-02-25 17:12:59 142

原创 LeetCode.55.跳跃游戏

原题链接:https://leetcode-cn.com/problems/jump-game/comments/。考虑使用贪心算法:对于一个例子:[2,3,1,1,4]首先将其翻转,得到:[4,1,1,3,2]。将问题转换为从尾部往前跳跃,是否可以跳到开头。可见问题具有最有子结构,我们可以将数组拆分变成多个子问题。而且该问题具有贪心选择性质,即可以通过局部最优构建全局最优。显然,...

2019-02-25 16:53:34 95

原创 Leetcode.264.丑数II

原题链接:https://leetcode-cn.com/problems/ugly-number-ii/利用动态规划的思想求第n个丑数。毫无疑问第一个丑数为1。所有的丑数必然是由以下式子构造而出:ugly=2i ×3j ×5kugly = 2^{i}\ \times3^{j}\ \times 5^{k}ugly=2i ×3j ×5k

2019-02-14 22:37:49 75

原创 LeetCode.43.字符串相乘

原题链接:https://leetcode-cn.com/problems/multiply-strings/。按照按位相乘,错位相加的方法。计算每一位的值。先计算每一位的按位相乘的乘积的和。然后取余,加除数加到下一位,继续循环取余进位操作。class Solution: def multiply(self, num1, num2): """ :typ...

2019-02-14 22:32:03 125

原创 LeetCode.22.括号生成

原题链接:https://leetcode-cn.com/problems/generate-parentheses/。一道利用回溯算法求解的典型题目。通过递归实现。在函数中传入一个空串。通过递归为传入的串添加"(",或者")"。添加"(",或者")“需要根据字符串中”(",或者")"个数来决定。直到字符串的长度为2*n。就添加这个串到结果列表中。class Solution: ...

2019-02-13 21:43:54 101

原创 LeetCode.15.三数之和

原题链接:https://leetcode-cn.com/problems/3sum/。简述题目要求:在列表中找到三个数的和为0.首先建立一个map。map中存储的键值对为<值,这个值在列中的出现的频率>将map按照键大于等于0和小于0分成两部分。建立两层遍历,第一层遍历大于0的map,第二层遍历小于0的map.取出一个大于0的map中的键i和小于0的map中的一个键j。得到...

2019-02-12 12:29:24 88

原创 LeetCode.166. 分数到小数

原题链接:https://leetcode-cn.com/problems/fraction-to-recurring-decimal/。简述题目的要求:将一个分数表示成小数,而且将循环节部分用括号括起来。解题思路:求这个小数的整数部分比较简单。求小数部分:求小数的每一位,要将上一步求得余数乘以10得到下一步的除数。则这一位的数字就是除数除以被除数的商。关于无限循环小数:建立一个map,...

2019-02-12 11:50:07 236

原创 LeetCode.714.买卖股票的最佳时机含手续费

原题链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-with-transaction-fee/submissions/。每一卖出股票就会额外付出一定的手续费。此题的思路和最佳买卖股票时机含冷冻期的思路类似。建立动态规划的递归方程。每一天有两个状态,卖出,买入。第i天的状态有:sell, buy则第i-...

2019-02-09 21:44:31 672 1

原创 LeetCode.309.最佳买卖股票时机含冷冻期

原题链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/。建立动态规划的递归方程:第i的收益依赖第i-1的收益情况。每一天有三种情况,有买入、卖出、的冷冻三个状态,分情况建立递归方程。第i天的三个状态为:buy,sell,cooldown第i-1天的三个状态为:prebuy,pr...

2019-02-09 21:28:04 381

原创 Leetcode.337.打家劫舍III

原题链接:https://leetcode-cn.com/problems/house-robber-iii/。解题思路:因为所有的房屋按照二叉树的结构排布。不能同时抢相邻层的房间。利用递归的思想求解这个题。如果小偷偷了第i层,那么就不可以抢第i+1层。建立一个有两个元素的列表,第一个元素存储不抢这一层的获得的最高金额。第二个元素存储抢这一层获得的最高金额。# Definition f...

2019-02-09 20:37:35 207

原创 LeetCode.213.打家劫舍II

原题链接:https://leetcode-cn.com/problems/house-robber-ii/根据官方给出的提示:因为房间n和房间1是相邻的,所以不能同时抢房间1和房间n。所以问题就变成了是抢劫House[1]~House[n-1]还是抢House[2]~House[n],会获取更大的利润。因为打家劫舍问题已经被解决。class Solution(object): de...

2019-02-09 20:20:26 134

原创 LeetCode.198.打家劫舍

原题链接:https://leetcode-cn.com/problems/house-robber/解题思路,首先建立一个长度为nums.length的列表memo。memo的每一位memo[i]表示劫匪从最后一家往前抢,抢到第i家所获得的最大现金。当劫匪到第i家只有两种情况,抢这一家没抢上一家或者不抢这一家抢了上一家。所以递归式为:memo[i] = max(nums[i] + memo...

2019-02-09 19:34:15 194

原创 Leetcode.133.克隆图

克隆一张无向图,图中的每个节点包含一个 label (标签)和一个 neighbors (邻接点)列表 。OJ的无向图序列化:节点被唯一标记。我们用 # 作为每个节点的分隔符,用 , 作为节点标签和邻接点的分隔符。例如,序列化无向图 {0,1,2#1,2#2,2}。该图总共有三个节点, 被两个分隔符 # 分为三部分。第一个节点的标签为 0,存在从节点 0 到节点 1 和节点 2 的两...

2019-02-08 23:03:41 153

原创 LeetCode.263.丑数

https://leetcode-cn.com/problems/ugly-number/丑数是因子只含有质因数2,3,5,的数。如果要判断一个数是否为丑数,除以这个数的所有为2,3,5的因子。如果最后结果等于1,那么这个数为丑数。class Solution(object): def isUgly(self, num): """ :type num:...

2019-02-02 22:39:13 133

原创 TensorFlow_变量管理

TensorFlow提供了一种通过变量名称来创建或者获取一种变量的机制。通过变量直接创建和获取变量tf.get_variable 和 tf.variable_scope 函数实现。import tensorflow as tf1.利用tf.get_variable创建和获取变量。使用tf.get_variable来创建一个变量:# 下面这两个定义是等价的。v = tf.get_vari...

2019-02-01 09:54:34 122

原创 TensorFlow_MNIST数字识别问题

import tensorflow as tf#导入MNIST的训练和测试数据from tensorflow.examples.tutorials.mnist import input_datatensorflow中通过input_data.read_data_sets函数生成一个类会将MNIST数据划分为train、validation和test三个数据集。在本例中input_dat...

2019-02-01 09:44:44 186

原创 模型持久化

为了让训练好模型可以复用,需要将神经网络结果持久化。TensorFlow提供了一个简单的API来保存和恢复神经网络模型。这个API是tf.train.Saver.# 保存TensorFlow计算图的方法import tensorflow as tf#声明两个变量并计算他们的和v1 = tf.Variable(tf.constant(1.0, shape=[1]), name = 'v...

2019-02-01 09:42:35 312

原创 Leetcode.32.最长有效括号

原题链接参考了https://blog.csdn.net/weixin_38823568/article/details/80997966解题方法。方法一:使用栈初始化一个start变量,表示有效括号的起始下标。初始化一个max变量,表示最长有效括号的子串长度。初始值均为0初始化一个栈,栈顶元素存储与当前’)'匹配的左括号的索引。遍历字符串的所有字符:1.若当前字符s[inde...

2019-01-30 23:20:56 200

原创 LeetCode.188. 买卖股票的最佳时机 IV

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

2019-01-30 21:05:00 416 1

原创 LeetCode.5.最长回文子串

这是原题链接:https://leetcode-cn.com/problems/longest-palindromic-substring/这道题可以利用动态规划的思想:回文串就是一个字符串的和它的翻转之后的字符串相同的字符串。首先我们构造如下的矩阵P(i,j)P(i,j)P(i,j)。P(i,j)P(i,j)P(i,j)的定义如下:P(i,j)={true,如果子串Si,...Sj是回...

2019-01-30 20:09:52 71

原创 LeetCode.53. 最大子序和

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。利用分治算法求解最大子数组的问题参考算法导论第4章思路:如果我们...

2019-01-24 22:42:52 123

空空如也

空空如也

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

TA关注的人

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