![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 77
Braylon1002
这个作者很懒,什么都没留下…
展开
-
gumbel-softmax如何实现离散分布可微+torch代码+原理+证明
gumbel-softmax 的原理和数学证明与torch代码实现原创 2024-03-09 14:05:47 · 2133 阅读 · 0 评论 -
彻底看懂二分查找:三种情况+三个注意点
二分查找关键总结,深入浅出原创 2024-02-22 12:16:03 · 1063 阅读 · 0 评论 -
977 有序数组的平方
文章目录简介解法1解法2简介我将参考leetcode中的部分题解和网上资料,自己将自己的刷题思路和过程进行总结。可能有一些自己的思路,但是大多数还是参考其他网友的想法。如果对您有帮助我备感荣幸~解法1将每个item平方然后排序。注意,sort需要:#include<algorithm>using namespace std;时间复杂度:遍历的部分需要n,sort需要nlogn,一共是O(nlogn)空间复杂度:res需要n,sort需要logn的栈空间进行排序解原创 2021-04-05 10:55:26 · 149 阅读 · 0 评论 -
剑指offer字符串练习汇总
文章目录简介JZ.2JZ.27JZ.34JZ.43JZ.44JZ.45JZ.49JZ.52JZ.53JZ.54简介这里总结了剑指offer的字符串部分练习,主要是牛客网的题目。我的整体感觉难度适中,主要是其中都有一些既定的套路或者规律,另外如果我还会参考一些网友的作答以便给大家完整的思路。其他文章:剑指offer数组练习汇总JZ.2这道题我觉得不难,首先我的第一个思路:class Solution: # s 源字符串 def replaceSpace(self, s):原创 2020-07-24 20:54:42 · 145 阅读 · 0 评论 -
剑指offer数组练习汇总
文章目录NO.1NO.13NO.19NO.28NO.29NO.30NO.32NO.35NO.37NO.40NO.42NO.50NO.51NO.64NO.66这里总结了剑指offer的数组部分练习,主要是牛客网的题目。我的整体感觉难度适中,主要是其中都有一些既定的套路或者规律,另外如果我还会参考一些网友的作答以便给大家完整的思路。注:这里的题号是牛客网的题号。NO.1有一个特点就是左下角和右上角的数据,如果target大于或者小于都只有一个方向可以进行移动,比如左下角只有右边(小于targ原创 2020-07-20 16:24:11 · 239 阅读 · 0 评论 -
SVM(二) latex手打公式 良心推导 原理分析 个人理解
文章目录简介SVM(二)软间隔核函数SMO优化SMO优化过程往期博客SVM(一) latex手打公式 良心推导 原理分析 个人理解简介这一篇主要是衔接上一个SVM(一),主要是软间隔、核函数和SMO的分享。建议没有读过第一篇的先看看第一篇blog。这一篇直接接着上一篇blog。SVM(二)软间隔上一次我们介绍了SVM的原理,但是不是所有的样本都能如我们的心意,比如这种情况:很明显一个规则的超平面不能很好的将两类样本进行分割,所以我们引入了软间隔,哦哦,不是我引入的,那些科学家们就引入了。原创 2020-06-18 16:27:30 · 733 阅读 · 0 评论 -
滑动窗口经典题目Sliding windows
文章目录简介340 Longest Substring with K Distinct Characters (medium)代码Smallest Subarray with a given sum (easy)代码325 Maximum Size Subarray Sum Equals k代码904 Fruits into Baskets (medium)003 No-repeat Substring (hard)代码Longest Substring with Same Letters after Re原创 2020-06-16 22:12:40 · 873 阅读 · 0 评论 -
动态规划详解+四个具体问题实例
文章目录简介引例递归方法:动态规划算法动态规划&分治算法区别个人理解总结动态规划问题矩阵连乘问题实例穷举法动态规划求解平面凸多边形最优三角划分问题描述动态规划解法背包问题问题描述动态规划解法实例最长公共子序列问题描述动态规划解法实例总结判断是否动态规划问题求解思路简介在这篇blog中我将通过费氏数列引入,然后介绍动态规划的概念,以及它和分治苏纳法的区别与联系。然后使用动态规划的思想来解...原创 2020-04-04 15:58:41 · 1993 阅读 · 0 评论 -
向量范数与矩阵范数的理解
简介这里记录一下有关范数的知识点,也是怕以后自己忘记。引入要更好的理解范数,就要从函数、几何与矩阵的角度去理解,我尽量讲的通俗一些。我们都知道,函数与几何图形往往是有对应的关系,这个很好想象,特别是在三维以下的空间内,函数是几何图像的数学概括,而几何图像是函数的高度形象化,比如一个函数对应几何空间上若干点组成的图形。但当函数与几何超出三维空间时,就难以获得较好的想象,于是就有了映射的概念,映...原创 2020-03-16 15:22:44 · 4011 阅读 · 0 评论 -
最小风险 最小错误 贝叶斯决策 Bayes(实例详解)
文章目录简介最小错误率Bayes例子分析最小风险的Bayes决策最小风险Bayes决策规则:例子简介贝叶斯决策其实是已经被很多博客解释的非常详细了,为了不制造学术垃圾,本来一直没打算写一篇关于Bayes的blog,但是我也是最近才看到这两个概念,唉,都怪自己掌握的还是不够到位。所以这次我会详细的分享有关最小错误、最小风险的Bayes决策,然后当然如果你还没有了解什么是贝叶斯决策的话,还是应该...原创 2020-03-13 15:21:14 · 28497 阅读 · 7 评论 -
决策树(ID3 C4.5 CART)原理+推导+代码
文章目录简介初识决策树特征选择信息增益信息增益比ID3C4.5决策树剪枝CART 分类与回归树简述:回归树的生成分类树的生成CART剪枝优缺点决策树ID3、C4.5算法CART分类与回归树适用场景代码简介决策树模型,自己总结了很久,也认为比较全面了。现在分享一下自己总结的东西。这里面我只捡精炼的说,基本上都是干货,然后能用人话说的,我也不会疯狂排列数学公式。初识决策树决策树其实是用于分...原创 2020-03-04 22:28:33 · 1269 阅读 · 0 评论 -
大数据学习(算法) Top N问题
文章目录简介那么这种题目或者这种问题到底解决的难点和关键点是什么?相关解法:真正的最优解。scala版本简介什么是TopN问题?举个例子:怎么在几十亿的数字中找到前50个数字(升序或者降序)。诸如此类问题都被成为topN问题。那么这种题目或者这种问题到底解决的难点和关键点是什么?我们来分析,这种题目绝对不能把它当作简单的排序来做,题眼在于超大的数量级,这就是告诉你在内存中不能完...原创 2020-03-02 11:11:30 · 1486 阅读 · 0 评论 -
堆排序 java
简介这里就是自己记录一下,因为确实已经有了很多的关于堆排序的blog的分享了,所以我就不再造轮子了。但是给大家推荐一个非常好的讲解:传送门然后就是我自己记录一下我的代码了,Java实现的大根堆,得到的是升序排列import org.junit.Test;/** * @Author: Braylon * @Date: 2020/2/29 20:56 * @Description:...原创 2020-03-02 10:35:42 · 172 阅读 · 0 评论 -
leetcode438 找到字符串中所有字母异位词
文章目录简介我的思路大神解法总结简介其实我的算法并不是强项,然后今天在做438这道题的时候发现了一个让我无比佩服的思路,这里记录一下和大家分享:首先看一下题目:给定一个字符串 s 和一个非空字符串 p,找到 s 中所有是 p 的字母异位词的子串,返回这些子串的起始索引。字符串只包含小写英文字母,并且字符串 s 和 p 的长度都不超过 20100。说明:字母异位词指字母相同,但排列不同...原创 2020-02-29 16:44:03 · 201 阅读 · 0 评论 -
模式识别数学基础
文章目录简介牛顿迭代法近似求解方程根梯度拉格朗日乘数法Fish准则函数的机制求解简介最近越来越发现数学的重要性,几乎所有的问题都抽象成为一个复杂的模型,然后通过数学的技巧来进行转化,得到一个可以求解的数学问题。可见数学的重要性。然后对于模式识别来说,数学更是解决问题的基础。这里我总结和罗列了一些数学基础方法。也算是给自己做一个总结。牛顿迭代法近似求解方程根应用:多数方程不存在求根公式,因...原创 2020-02-29 11:08:17 · 708 阅读 · 0 评论 -
滑动窗口最大值 java 自己思路 没看任何writeup
文章目录简介思考过程算法简述代码简介滑动窗口最大值,leetcode 239,我觉得我这个方法的时间还不错,所以分享一下我的思路。另外我的内存内用确实一直不是很优秀,在这方面有研究的小伙伴还希望让我学习一下。来看一下我的提交:用时我是满意的,但是内存占的忒多了。思考过程我说一下我的思考过程首先这是一道典型的滑动窗口题目,那么一定有一个left遍历,然后另一个right用left...原创 2020-02-18 16:51:24 · 136 阅读 · 0 评论 -
CtCI String操作部分题解(java)
简介原来我写过的一些关于CtCI的代码,于是整理起来,也是怕以后自己会忘记,更可能会找不到。所以放在这里,和大家分享。下面都是使用java来实现的。判断String中的字符是否只出现一次咱们分两种情况(1)只有英文字母,也就是说string由26个字母组成(这种方法适用于小的字符范围的情况,不限于只是26个。举一反三)public boolean isUniqueFor26(Stri...原创 2020-02-10 19:58:30 · 210 阅读 · 0 评论 -
java实现过河卒
这篇blog算是自己记录一下,没什么很新的东西。共勉~~因为我原来并没有研究过算法,所以一看到过河卒这个题目直接想都没想 ,深搜遍历被。public class guohezu { static int[][] grips; static int[] back = new int[40]; static int cur_x = 1, cur_y = 1; sta...原创 2019-11-28 15:37:47 · 619 阅读 · 0 评论 -
编译原理计算器calculator+文法分析
我们的编译原理作业老师让写一个calculator,第一次写编译程序可能里面有不少冗余和低级处理,但是也push出来和大家共勉。环境我使用的是VS2019,用的c语言来做的。目标计算器接受四则运算表达式为输入(如下所示)。如果表达式语法正确,则输出计算结果,否则报错,指出错误位置及原因。Input 1:float a; int b; a = (10.44*356+1.28) / ...原创 2019-10-23 10:20:51 · 2607 阅读 · 0 评论 -
scala循环嵌套实现冒泡排序
------------我主要是记录一下怕自己忘了scala的一些语法细节,冒泡太简单了,还望大家勿嫌弃没啥说的直接上代码/** * 冒泡排序 * 这是排序算法中最简单的一个算法了,我会用scala来写 * 主要思路: * 1 每两个进行比较,找到大的放在后面 * 2 重复1中的操作,直至找到最大的,然后固定位置不在变化 * * 如果还不清楚的可以在 https...原创 2019-07-18 21:05:50 · 304 阅读 · 0 评论