自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

绝知此事要躬行

喜欢遇到新的算法题,然后攻克的感觉很棒

  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 C++ 异常 exception throw

之前很少用到C++的exception机制,看到C++ Primer的第6章,简要的介绍一下:首先,C++ 的异常处理包括: throw表达式。如:#include#includeusing namespace std;int main(){ int x; while(cin >> x) { if (x == 0) { throw runtime_error(

2014-02-24 21:45:53 6142

原创 二叉查找树——Validate Binary Search Tree

Given a binary tree, determine if it is a valid binary search tree (BST).Assume a BST is defined as follows:The left subtree of a node contains only nodes with keys less than the node's key.Th

2014-02-23 17:28:26 1252

原创 算法 -- 计算逆序数 , significant逆序数 归并排序

求解逆序数是归并排序的副产品。这学期见过很多版本的逆序数,大多数的版本都曲解了“significant逆序数”(后面称为显著逆序数),也就是说:if i    k*A[j], (1  那么再看其数值大的程度,就可以决定是否是“显著逆序数”。我实现了下面的版本,注释中讲解的是我在编写程序时遇到的问题://此处使用的归并排序是采用的不使用哨兵元素的形式。//如果i 3*A[j]时才

2014-02-23 16:43:29 2173

原创 [leetcode] Recover Binary Search Tree

题目描述:Two elements of a binary search tree (BST) are swapped by mistake.Recover the tree without changing its structure.Note:A solution using O(n) space is pretty straight forward. Coul

2014-02-22 20:53:50 1238 1

原创 字符串匹配 之 KMP详解

最近看了算法导论的KMP算法的介绍,笔者实现了该算法,并大致懂得了该算法的思想。现大致总结如下:字符串匹配:即是在一个目标串中寻找某一个模式出现的位置:例如:在目标串 S = “ababababca” 中寻找模式串P = “ab”。返回“ab”的位移为0,2,4,6。传统的做法:

2014-02-16 16:17:27 1141

原创 数据结构 二叉查找树 BST

二叉查找树:又称为 二叉排序树   二叉搜索树首先,这几个名字都让我觉得混乱,简单地讲,二叉树的重要的应用便是查找了,因此“查找”与“搜索”二字等价,可以理解。那么又由于二叉搜索树的中序遍历是有序的,因此又叫做二叉排序树。接下来,步入正题:[摘自维基百科]二叉查找树(Binary Search Tree),也称有序二叉树(ordered binary tree),排序二叉树(s

2014-02-13 21:41:20 1581

原创 [算法]二叉树的遍历:前序,中序与后序

二叉树的遍历是二叉树的众多算法的基础。主要有,前序,中序与后序。

2014-02-11 22:48:43 9182 1

原创 层次遍历 二叉树

对于二叉树的层次遍历,本人实现了递归版本与非递归的版本。要求对于给定的二叉树, 输出的结果为[   [  1   ]  ,  [  2  , 3  ] , [4 , 5 ]   ] 注意:只需要将各个层之间的界限确定清楚就好了。迭代版本:(使用队列,利用空指针作为层与层之间分隔的标记)。/** * Definition for binary tree * struct

2014-02-06 16:24:30 1247 1

原创 Max Points in a line[修改]

题目描述:Given n points on a 2D plane, find the maximum number of points that lie on the same straight line.分析:点是否共线,从斜率入手。注意:在提交的过程中,我发现,如果给定的n个点中有重复的点,也是当做不同的点来计算的。例如:如果所有的n个点一样的话,那么共线的点的个数就

2014-02-05 14:09:45 1525

原创 [data structure] heap 堆

定义:1  (二叉) 堆是一颗完全二叉树。2   任何一个节点都小于它的后裔节点。(最小堆),相应的,最大堆中的任何一个节点大于它的后裔节点。由于二叉堆是一个完全二叉树,因此对于二叉堆中的任何一个节点i,它的子节点的编号为:A[ left ]  =  A[ 2*i + 1 ]     ;      A[ right ] = A [ 2*i + 2 ]   (注:这是与实

2014-02-02 14:50:53 1796

原创 算法 之 位图排序 bit-map sort

所谓的bit-map其实很简单,就是使用一个位来表示元素是否存在,

2014-02-01 21:55:11 1771

c语言进阶 中断与驱动讲解

C语言进阶方面的,第六讲中断和驱动的讲解

2010-10-19

空空如也

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

TA关注的人

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