- 博客(55)
- 资源 (1)
- 收藏
- 关注
转载 数据挖掘案例——ReliefF和K-means算法的医学应用
【原创】数据挖掘案例——ReliefF和K-means算法的医学应用阅读目录1.数据挖掘与聚类分析概述 2.特征选择与聚类分析算法3.一个医学数据分析实例4.主要的Matlab源代码 数据挖掘方法的提出,让人们有能力最终认识数据的真正价值,即蕴藏在数据中的信息和知识。数据挖掘 (DataMiriing),指的是从大型数据库或数据仓库中提取人们感兴
2015-09-05 21:54:32
5139
转载 数据库事务隔离级别
本文系转载,原文地址:http://singo107.iteye.com/blog/1175084数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。√: 可能出现 ×: 不会出现
2015-07-31 20:15:36
717
原创 最小二乘法学习二
继上一篇基本最小二乘法和带部分空间约束的最小二乘法,它们要么易过拟合,要么不易求解,下面介绍 l2约束的最小二乘法,又叫正则化最小二乘法,岭回归。一个模型的复杂程度与系数有关,最简单的模型是直接给所有系数赋值为0,则该模型总会预测出0值,模型虽然足够简单,但是没有意义,因为它不能有效预测。定义模型的复杂度为:由于我们的目的是使模型不要过于复杂,所以让上述值小是有意义的,因此新的目标
2015-07-06 10:14:28
3323
原创 最小二乘法学习一
本文主要讲解基本最小二乘法和带有约束条件的最小二乘法。一 基本最小二乘法最小二乘法是回归中最为基础的算法。它是对模型的输出和训练样本输出的平方误差(这里还乘以了1/2只是为了求导简化)为最小时的参数 进行学习。特别地,对于线性模型有:求导可得:其中设计矩阵:%基本最小二乘法clear all;close all;n = 50;N
2015-07-04 22:15:30
5037
原创 动态规划
动态规划(DP)是一种解决复杂问题特别是主问题包含重复子问题的常用算法思想。它将待求解问题分解成若干子问题,先求解子问题,然后再从子问题中得到原问题的解。不同于分治法,子问题常常不是互相独立的。利用动态规划求解问题的有效性 依赖于问题本身具有的两个重要性质,也就是如果待解决问题具有以下两个性质,就可以考虑使用动态规划求解。1 最优子结构:问题的最优解包含了其子问题的最优解。2 重叠子问
2015-06-29 21:25:53
822
原创 Leetcode--easy系列10
#205 Isomorphic StringsGiven two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a charact
2015-06-25 21:46:03
706
原创 Leetcode--easy系列9
#198 House RobberYou are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them
2015-06-25 20:17:48
820
原创 Leetcode--easy系列8
#172 Factorial Trailing Zeroes Given an integer n, return the number of trailing zeroes in n!.Note: Your solution should be in logarithmic time complexity.一个很直观的想法是用递归求出n!然后/10 计算末
2015-06-25 16:24:52
598
原创 Leetcode--easy系列7
#125 Valid PalindromeGiven a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.For example,"A man, a plan, a canal: Panama" is a palindro
2015-06-24 22:06:43
507
原创 Leetcode--easy系列6
#104 Maximum Depth of Binary TreeGiven a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node
2015-06-24 21:03:10
671
原创 Leetcode--easy系列5
#83 Remove Duplicates from Sorted ListGiven a sorted linked list, delete all duplicates such that each element appear only once.For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3
2015-06-24 16:57:40
601
原创 Leetcode--easy系列4
#58 Length of Last WordGiven a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string.If the last word does not exist,
2015-06-24 15:54:43
788
原创 Leetcode--easy系列3
#26 Remove Duplicates from Sorted ArrayGiven a sorted array, remove the duplicates in place such that each element appear only once and return the new length.Do not allocate extra space for
2015-06-24 10:59:09
676
原创 Leetcode--easy系列2
#14 Longest Common PrefixWrite a function to find the longest common prefix string amongst an array of strings.这个题求多个字符串的公共前缀,除了要考虑串空外,如果存在公共前缀,那么必定也是第一个串的前缀。所以可以以第一个串为基准,比较其他串的前缀是否与第一个串相同。c
2015-06-23 11:18:03
777
原创 Leetcode--easy系列1
#6 ZigZag ConversionThe string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)
2015-06-22 20:50:21
1286
原创 Java多线程
本文主要讲解java多线程的基本概念,尽量用代码加以理解。最后给出阿里2015年4月份软件研发实习生笔试有关多线程的一道题的做法。多线程是实现并发机制的有效手段,与进程相比,线程是划分得比进程更小的执行单元。此外,每个进程都有专用的内存区域,即进程之间数据和状态是完全独立的,而同一进程的线程之间,线程共享内存单元(包括代码和数据)。Java多线程实现方式有2种,一种是通过继承Thread类
2015-06-08 20:48:12
888
转载 隐马尔科夫模型(HMM)攻略
隐马尔可夫模型 (Hidden Markov Model,HMM) 最初由 L. E. Baum 和其它一些学者发表在一系列的统计学论文中,随后在语言识别,自然语言处理以及生物信息等领域体现了很大的价值。平时,经常能接触到涉及 HMM 的相关文章,一直没有仔细研究过,都是蜻蜓点水,因此,想花一点时间梳理下,加深理解,在此特别感谢 52nlp 对 HMM 的详细介绍。 考虑下面交通灯的
2015-06-05 19:31:01
725
原创 最小生成树之Kruskal算法和Prim算法
根据图的深度优先遍历和广度优先遍历,可以用最少的边连接所有的顶点,而且不会形成回路。这种连接所有顶点并且路径唯一的树型结构称为生成树或扩展树。实际中,希望产生的生成树的所有边的权值和最小,称之为最小生成树。常见的最小生成树算法有Kruskal算法和Prim算法。Kruskal算法每次选取权值最小的边。然后检查是否加入后形成回路,如果形成回路则需要放弃。最终构成最小生成树。n个顶点的图最小生
2015-06-04 16:17:46
1449
原创 图的遍历
图是一种比线性表和树稍微复杂的数据结构,相比线性表的前驱后继和树的层次关系,图中任意两个元素之间都有可能存在关系。图由非空的顶点集合和一个描述顶点之间关系的集合组成,记为 G = (V, E)。可分为 无向图 和 有向图。n个顶点的无向图中,如果任意两个顶点之间有且只有一条边,总的边数为 n(n-1)/2,这样的图称为完全图;n个顶点的有向图中,如果任意两个顶点之间有且只有一条边,总的边数为
2015-06-04 11:18:22
1908
原创 决策树之C4.5算法学习
决策树是一种预测模型,它由决策节点,分支和叶节点三个部分组成。决策节点代表一个样本测试,通常代表待分类样本的某个属性,在该属性上的不同测试结果代表一个分支;分支表示某个决策节点的不同取值。每个叶节点代表一种可能的分类结果。使用训练集对决策树算法进行训练,得到一个决策树模型,利用模型对未知样本(类别未知)的类别判断时,从决策树根节点开始,从上到下搜索,直到沿某分支到达叶节点,叶节点的类别标签就是
2015-06-02 22:14:15
17093
原创 Java内部类
尽管内部类的使用违背了Java要比C++更加简单的设计理念,但是所谓存在即合理,内部类可以对同一个包中的其他类隐藏起来,内部类方法可以访问该类定义所在作用域中的数据,包括私有的数据,某些情况下使用匿名内部类的解决方案更简短易于理解。内部类是定义在另一个类中的类。既可以定义在类中,也可以定义在类的方法中。内部类的对象有一个隐式引用,它引用了实例化该内部对象的外部类对象,因此,通过这个指针
2015-05-31 16:08:20
598
原创 从二叉排序树到平衡二叉树再到红黑树系列3
这篇博客主要讲解B树及其插入删除操作,并给出操作的流程图以达到清晰易懂的目的,尽管标题是从二叉排序树到平衡二叉树再到红黑树系列3,没有B树二字,但他们都是动态查找树,所以我将他们归为一个系列。B树是为磁盘或其他直接存取的辅助存储设备而设计的一种平衡搜索树。它以一种很自然的方式推广了二叉搜索树,B树与红黑树的不同之处在于B树结点的孩子不限于最多为2,而是可以有数个到数千个不定。因为结点的分支更多
2015-05-29 19:26:54
1142
原创 Leetcode 3 Longest Substring Without Repeating Characters
Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repeating letters for "abcabcbb" is "abc", which the length is 3. Fo
2015-05-28 19:04:38
658
原创 Leetcode 2 Add two Numbers
You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a link
2015-05-27 20:35:55
1318
原创 Leetcode 1 Two Sum
Two Sum:Given an array of integers, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two numbers such that they add up to the
2015-05-27 13:21:08
634
原创 串模式匹配之BF和KMP,Sunday算法
本文简要谈一下串的模式匹配。主要阐述BF算法和KMP算法。力求讲的清楚又简洁。一 BF算法核心思想是:对于主串s和模式串t,长度令为len1,len2, 依次遍历主串s,即第一次从位置0开始len2个字符是否与t对应的字符相等,如果完全相等,匹配成功;否则,从下个位置1开始,再次比较从1开始len2个字符是否与t对应的字符相等。。。。BF算法思路清晰简单,但是每次匹配不成功时都要回
2015-05-26 21:39:07
1822
原创 Java类集框架之HashMap(JDK1.8)源码剖析
这几天学习了HashMap的底层实现,发现关于HashMap实现的博客还是很多的,但几乎都是JDK1.6版本的,而我的JDK版本是1.8.0_25,对比之下,发现Hashmap的实现变动较大。这篇博客断断续续写了一天,理解不当之处,欢迎指正。在JDK1.6中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的链表都存储在一个链表里。但是当位于一个桶中的元素较多,即hash值
2015-05-21 19:42:48
3445
原创 Java类集框架之LinkedList源码剖析
LinkedListLinkedList基于双向循环链表实现。也可以被当做堆栈,队列或双端队列进行操作。非线程安全。下面直接贴ArrayList的Java实现(只贴了部分代码),来源JDK1.8.0_25/src.zip。 /** * ****双向链表对应的数据结构********* * 包含:节点值item * 前驱 pre *
2015-05-20 21:53:35
806
原创 Java类集框架之ArrayList源码剖析
ArrayList基于数组实现,本质上是对象引用的一个变长数组,能够动态的增加或减小其大小。不是线程安全的,只能用在单线程环境下。多线程环境下可以考虑用Collection.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurrent并发包下的CopyOnWriteArrayList类下面直接贴ArrayList的Jav
2015-05-20 21:05:24
1331
转载 AVL树图文解析和C语言实现
概要本章介绍AVL树。和前面介绍"二叉查找树"的流程一样,本章先对AVL树的理论知识进行简单介绍,然后给出C语言的实现。本篇实现的二叉查找树是C语言版的,后面章节再分别给出C++和Java版本的实现。建议:若您对"二叉查找树"不熟悉,建议先学完"二叉查找树"再来学习AVL树。目录1. AVL树的介绍2. AVL树的C实现3. AVL树的C实现(完整源码)4.
2015-05-19 19:26:24
710
原创 JSP基本构成和执行过程
JSP(Java Server Page)页面是指扩展名为 .jsp 的文件。JSP是服务器端运行的页面,不像html文件直接就可以在浏览器中运行。JSP页面必须部署到web容器中编译成Servlet才能执行,可以说,JSP就是Servlet的一种形式。事实上,JSP是Servlet发展的产物,关于JSP和Servlet的关系以后再在博客中介绍。JSP基本页面由指令标签,HTM
2015-05-18 21:00:41
2122
原创 不产生候选集的关联规则挖掘算法FP-Tree
上篇博客讲述了Apriori算法的思想和java实现,http://blog.youkuaiyun.com/u010498696/article/details/45641719 Apriori算法是经典的关联规则算法,但是如上篇博客所述,它也有两个致命的性能瓶颈,一个是频繁集自连接产生候选集这一步骤中可能产生大量的候选集;另一个是从候选集得到频繁项集需要重复扫描数据库。2000年,Han等提出了一个称为
2015-05-18 15:24:42
3894
转载 Web研发模式演变
一、简单明快的早期时代可称之为 Web 1.0 时代,非常适合创业型小项目,不分前后端,经常 3-5 人搞定所有开发。页面由 JSP、PHP 等工程师在服务端生成,浏览器负责展现。基本上是服务端给什么浏览器就展现什么,展现的控制在 Web Server 层。这种模式的好处是:简单明快,本地起一个 Tomcat 或 Apache 就能开发,调试什么的都还好,只要业务不太复杂。
2015-05-18 09:35:42
728
原创 从二叉排序树到平衡二叉树再到红黑树系列2
上篇博客主要讲述了二叉排序树的基本概念和插入删除操作,必须再次说明的是:在一棵高度为h的二叉排序树上,实现动态集合操作查询,插入和删除的运行时间均为O(h)。可见二叉树的基本操作效率取决于树的形态,当然树的高度越低越好,显然树分布越均匀,高度越低。那么,问题来了?对于给定的关键字序列,如何构造一棵形态匀称的二叉排序树。这种匀称的二叉排序树就称为平衡二叉树。平衡二叉树定义:平衡二叉树
2015-05-15 11:24:31
1120
原创 从二叉排序树到平衡二叉树再到红黑树系列1
最近想写一些关于红黑树的博客,既想写的全面,又直观,但是又不知道从哪里入手。斟酌再三,还是从最简单的二叉排序树开始写。二叉排序树(Binary Sort Tree)又叫二叉查找树。它是一种特殊结构的二叉树。其或为空树,或具备下列性质:(1)若它的左子树不为空,则左子树上所有结点的值均小于它的根节点的值。(2)若它的右子树不为空,则左子树上所有结点的值均大于它的根节点的值。显然,它的
2015-05-13 20:11:43
875
原创 HTML/CSS基础
HTML:HyperText Markup Language 即超文本标记语言,不同于程序设计语言,它只能建议浏览器以什么方式或结构显示网页内容,是网页的基础架构。CSS: Cascading Style Sheets 即层叠样式表,简称样式表,是网页页面排版样式标准,它弥补了HTML对网页格式化的不足,起到排版定位的作用。顺便说一下JavaScript。HTML和CSS配合使用,提供给用
2015-05-12 21:51:57
933
原创 Apriori算法学习和java实现
关联规则挖掘可以发现大量数据中项集之间有趣的关联或相关联系。一个典型的关联规则挖掘例子是购物篮分析,即通过发现顾客放入其购物篮中的不同商品之间的联系,分析顾客的购物习惯,从而可以帮助零售商指定营销策略,引导销售等。国外有"啤酒与尿布"的故事,国内有泡面和火腿的故事。本文以Apriori算法为例介绍关联规则挖掘并以java实现。什么是关联规则:对于记录的集合D和记录A,记录B,A,B属于D:
2015-05-11 13:00:20
23910
9
原创 二叉树性质和有关操作汇总
二叉树是一种重要的数据结构. 二叉树是n(n>=0)个结点的有限集合,该集合或为空集,或由一个根结点和两棵互不相交的,分别称为根结点的左子树和右子树的二叉树组成(递归定义)满二叉树:对于这样的一棵二叉树,如果所有分支结点都存在左右子树,且所有叶子节点都在同一层上,称这样的二叉树为满二叉树。完全二叉树:如果一棵具有n个结点的二叉树的结构与满二叉树的前n个结点完全相同,称之为完全二叉树。
2015-05-10 20:10:57
717
原创 Myeclipse中struts2配置文件配置dtd以支持自动补全
如果在eclipse中配置只需要,只需要在菜单栏window->preference->Myeclipse->file and eiditor->xml->xml catalog->add添加:Location中选中struts-2.3.dtd所在位置如下图所示Key Type选中URIKey:在struts.xml中有 "-//Apache Software Foundati
2015-05-08 22:16:58
2527
原创 归并排序和桶排序
归并排序就是将两个或多个有序表合并成一个有序表的过程。若将两个有序表合并成一个表则称为二路归并。二路归并过程如下:首先把待排的每一个元素看成一个有序表。n个元素构成n个有序表。接着两两合并,即第一个表和第二个表合并;第三个表和第四个表合并;.....。依次类推,若最后还剩一个表没有合并(即n为奇数),则直接进入下一次两路归并。此为一趟归并。然后再两两合并,直到最后合并为一个表结束。例如
2015-05-08 11:17:33
3314
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人