算法
breakpoints_
这个作者很懒,什么都没留下…
展开
-
机器学习(3)-支持向量机(SVM)含python代码
支持向量机(SVM)定义:支持向量机:英文名supportvectormachine,一般简称SVM。通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的超平面(线性分类器),其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。超平面方程式: ,其中X为多维向量,W也为...原创 2019-12-30 19:13:46 · 3374 阅读 · 0 评论 -
机器学习(2)-K-Means(含代码)
K-Means算法介绍什么是K-Means?K-Means方法是一种非监督学习的算法,它解决的是聚类问题。K 是聚类算法中簇的个数Means 是均值算法(聚类中对象的均值) 如上图,当k=2时,可以看出利用K-Means算法可以分成蓝色...原创 2019-12-27 11:59:11 · 779 阅读 · 0 评论 -
机器学习(1)-贝叶斯(朴素贝叶斯,贝叶斯网络)
贝叶斯算法由于小组内项目需要,出于技术储备,小组每个人学习一个机器学习算法,做成ppt,然后给出训练数据,用python写出代码,并运行看效果,我抽到的是贝叶斯算法,大学的时候学习过,整个组都讲完了,是时候整理一下了~贝叶斯算法基本概念:贝叶斯分类算法是统计学的一种分类方法,它是一类利用概率统计知...原创 2019-12-26 16:34:40 · 1457 阅读 · 0 评论 -
堆排序详解--大顶堆
堆的概念堆是一颗顺序存储的完全二叉树每个结点的关键字都不大于其孩子结点的关键字,这样的堆称为小根堆每个结点的关键字都不小于其孩子结点的关键字,这样的堆称为大根堆对于n个元素的序列{R0, R1,R2,.......,Rn}当且仅当下列关系之一的时候,称之为堆 (1) Ri <= R2i + 1 且 Ri <= R2i + 2 (小根堆) (2) ...原创 2019-02-25 19:37:33 · 41715 阅读 · 2 评论 -
深度优先搜索(DFS)---LeetCode47(全排列II)
此前,也写过一篇用dfs解决全排列问题的博客,今天又遇到一个变形,于是忍不住就撸了一把代码。题目描述:给定一个可包含重复数字的序列,返回所有不重复的全排列。示例:输入: [1,1,2]输出:[ [1,1,2], [1,2,1], [2,1,1]]这跟之前的思路类似,还是以每一个数为根深度优先搜索其他的数,每条路径即是一条解法,但是也有差别,之前不重复的序列,...原创 2019-03-26 19:58:39 · 208 阅读 · 0 评论 -
最小堆实现优先队列+Dijkstra 解决最短路问题
某著名游戏公司上机题目题目回来网上搜了一把是这样的 BIT has recently taken delivery of their new supercomputer, a 32 processor Apollo Odyssey distributed shared memory machine with a hierarchical communication subsystem. Va...原创 2018-09-03 16:18:24 · 1640 阅读 · 0 评论 -
c++实现对结构体的快速排序
浅谈sort排序在写这篇文章之前我对于结构体排序都是用STL的std::sort() 现假设有typedef struct STreeNode* pSTreeNode;struct STreeNode{ int nodeid; int namevalue; vector<pSTreeNode> pChildList;}; 对于pChild...原创 2018-04-27 21:41:03 · 4677 阅读 · 0 评论 -
字典树的运用,实现字符串的精确匹配与模糊匹配
背景 实现 项目里面的一个 字符串检索功能(无关业务,只写实现,后续 需要融入项目,会把树生成一段二进制blob 放到内存,变长的字节储存listsize 以及一些偏移 会重新构造搜索算法,预计一周后会继续与大家分享)需求 现有一棵树(普通树)有10w个字符串,索引为ID,现要实现2个功能1: 给定一字符串快速查找该字符串的位置2:输入一字符串 每输入...原创 2018-04-20 20:09:05 · 3739 阅读 · 0 评论 -
栈 ~ 思维题
题目:输入两个整数数列,第一个序列表示栈的压入顺序,请判断第二个序列是否是该栈的其中一个弹出顺序。假设压入栈的所有数字均不相等。例如,序列{1,2,3,4,5}是某栈的压栈序列,序列{4,5,3,2,1}是该压栈序列对应的一个弹出序列,但是{4,3,5,1,2}就不可能是该压栈序列对应的一个弹出序列。思路解决这个问题很直观的想法就是建立一个辅助栈,把输入的第一个序列中的数字依次压入辅助栈,...原创 2018-05-26 22:32:31 · 185 阅读 · 0 评论 -
基于字典树原理对二进制文件进行广度优先搜索实现模糊匹配
背景:记录成长开博客的第一篇文章便是字典树实现模糊匹配,那个时候提到会把字典树导入二进制文件后进行搜索优缺点比较:对字典树的深搜实现模糊匹配:缺点:每次启动程序需要加载一颗字典树,浪费时间,浪费空间。优点:程序较为简单,实现起来相对容易对二进制文件的广搜实现模糊匹配:缺点:代码繁琐,难以实现,设计二进制文件的数据结构极为难难难。优点:设计的数据结构较优等时省时间,空间...原创 2018-06-29 10:36:46 · 802 阅读 · 0 评论 -
社招二叉搜索树面试题目——第K大的结点
需求 给定一棵二叉搜索树,求出第k大的节点。 思路 二叉 搜索树又叫二叉平衡树,左子树小于根结点,右子树大于根结点。所以中序遍历二叉搜索树的话会是从小到大排序。 实现typedef struct node{ int data; struct node *left; struct node *right;}BTNode;BTNode* searchTagC...原创 2018-07-23 12:03:47 · 233 阅读 · 0 评论 -
归并排序 C++递归
自己写的一个简单的版本,保存一下以便以后回顾void merge(int *data, int start, int mid, int end, int *result){ int i, j, k; i = start; j = mid + 1; k = 0; while (i <= mid &...原创 2018-07-13 16:44:14 · 370 阅读 · 1 评论 -
深度优先搜索(DFS)
深度优先搜索百度定义图的深度优先搜索(Depth First Search),和树的先序遍历比较类似。它的思想:假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首先访问该顶点,然后依次从它的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和v有路径相通的顶点都被访问到。 若此时尚有其他顶点未被访问到,则另选一个未被访问的顶点作起始点,重复上述过程,直至图中所有顶点都被访问...原创 2018-05-18 16:33:04 · 2729 阅读 · 2 评论