算法学习
Coder_py
这个作者很懒,什么都没留下…
展开
-
朴素贝叶斯的理解
朴素贝叶斯的理解一、背景朴素贝叶斯是基于贝叶斯定理与特征条件独立假设的分类方法。对于给定的训练数据集,首先基于特征条件独立假设学习输入输出的联合概率分布,然后基于模型,对给定的输入x,利用贝叶斯定理求出后验概率的最大的输出y。二、贝叶斯定理2.1、贝叶斯定理公式P(A∣B)=P(A)P(B/A)P(B) P(A|B) = \frac {P(A)P(B/A)}{P(B)}P(A∣B)=P(...原创 2019-12-14 19:40:20 · 504 阅读 · 0 评论 -
我的机器学习之路-KNN算法
我的机器学习之路-KNN算法一、 K近邻算法k-近邻(k-Nearest Neighbour,简称KNN)是一种基本分类与回归方法,属于是有监督学习中的分类算法。二、 算法介绍2.1 思路k近邻算法的输入为实例的特征向量,对应于特征空间的点;输出为实例的类别,可以取多类。k近邻法假设给定一个训练数据集,其中的实例类别已定。分类时,对新的实例,根据其k个最近邻的训练实例的类别,通过多数表决...原创 2019-12-04 19:38:37 · 417 阅读 · 0 评论 -
递归求解从数组中取出n个元素的所有组合
递归求解从数组中取出n个元素的所有组合问题:如数组为{1, 2, 3, 4, 5, 6},那么从它中取出3个元素的组合有哪些,取出4个元素的组合呢?比如取3个元素的组合,我们的思维是:取1、2,然后再分别取3,4,5,6;取1、3,然后再分别取4,5,6;......取2、3,然后再分别取4,5,5;......基本思路:原创 2017-09-25 22:46:47 · 3854 阅读 · 0 评论 -
Java与算法(7)
Java与算法(7)1.对单链表进行选择排序public class SelectionSortded { public static class Node { int data; Node next; public Node(int data) { this.data = data; } } public void printLink(Node h原创 2017-06-15 16:54:00 · 275 阅读 · 0 评论 -
Java与算法(6)
Java与算法(6)题目:将单链表按某值划分为左边小,中间相等,右边大的形式。如:9-0-4-5-1,按3来划分结果就是1-0-4-9-5对部分内部节点顺序不做要求public class DivideLink { public static class Node { int data; Node next; public Node原创 2017-06-14 16:22:07 · 267 阅读 · 0 评论 -
Java与算法(5)
Java与算法(5)题目:反转单链表和双链表public class ReverseLink { public static class Node { int data; Node next; public Node(int data) { // TODO Auto-generated constructor stub this.data = data原创 2017-06-13 17:40:07 · 311 阅读 · 0 评论 -
Java与算法(4)
Java与算法(4)题目:给定两个有序链表的头指针head1和head2,打印两个链表的公共部分public class CommonPart { public static class Node { int data; Node next; public Node(int data) { this.data = data; } } publ原创 2017-06-12 16:23:10 · 303 阅读 · 0 评论 -
Java与算法(13)
Java与算法(13)1.高效求解完全二叉树的节点个数public class GetTreeNodeNumber { public static class Node { public int value; public Node left; public Node right; public Node(int data) { this.value = da原创 2017-06-22 16:43:42 · 272 阅读 · 0 评论 -
Java与算法(12)
Java与算法(12)1.二叉树节点间最大距离问题给定头节点,求最大距离public class MaxDIstance { public static class Node { public int value; public Node left; public Node right; public Node(int data) { this.val原创 2017-06-21 15:13:32 · 290 阅读 · 0 评论 -
Java与算法(3)
Java与算法(3)题目:定义二叉树节点如下: public class Node { public int value; public Node left; public Node right;public Node(int data) { this.value = data; }}一个数组的MaxTree定义如下1 数组没有重复元素原创 2017-06-08 22:33:37 · 271 阅读 · 0 评论 -
Java与算法(11)
Java与算法(11)1.通过给定一个有序数组生成一棵平衡二叉搜索树public class BuildAVL { public static class Node { public int value; public Node left; public Node right; public Node(int data) { this.value = data原创 2017-06-20 16:12:56 · 375 阅读 · 0 评论 -
Java与算法(2)
Java与算法(2)题目:一个栈依次压入1,2,3,4,5,那么从栈顶到栈底分别为5,4,3,2,1,将这个栈转置后,从栈顶到栈底为1,2,3,4,5,也就是实现栈中元素的逆序,但是只能使用递归函数来实现,不能使用其它数据结构public class ReverseByStack { Stack stack; public ReverseByStack(Stack stac原创 2017-06-07 19:57:16 · 543 阅读 · 0 评论 -
Java与算法(10)
Java与算法(10)1.判断二叉树是否为平衡二叉树public class IsBanlanceTree { public static class Node { public int value; public Node left; public Node right; public Node(int data) { this.value = data;原创 2017-06-19 17:41:47 · 307 阅读 · 0 评论 -
Java与算法(9)
Java与算法(9)1.给定二叉树头节点,每个节点的值都不同,找到含有节点最多的搜索二叉子树。public class FindBST { public static class Node { int data; Node left; Node right; public Node(int data) { // TODO Auto-generated const原创 2017-06-18 13:52:17 · 350 阅读 · 0 评论 -
Java与算法(1)
Java与算法(1)题目: 设计一个特殊的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。要求:1 pop,push,getMin操作的时间复杂度都是O(1) 2 设计的栈类型可以使用现成的栈结构public class Stack_getMIn { Stack stack_data ; Stack stack_min ; public原创 2017-06-06 20:22:45 · 283 阅读 · 0 评论 -
Java与算法(8)
Java与算法(8)1.按照左右半区的方式重新组合单链表链表长度为N,N为偶数,前N/2个节点为左半区,后N/2个节点为右半区N为奇数,前N/2个节点为左半区,后N/2+1为右半区public class MergeLR { public static class Node { int data; Node next; public Node(int原创 2017-06-17 11:48:09 · 247 阅读 · 0 评论