博客专栏  >  综合   >  数据结构与算法

数据结构与算法

常用的数据结构与算法基本概念,数据结构与算法的具体实现,在项目中的应用

关注
7 已关注
16篇博文
  • 算法系列(十三)图论基本概念和拓扑排序

    图的定义 一个图G=(V,E),由定点的集合V,和边的集合E组成。每一条边都是一副点对(v,w),边也称作弧,边上可以有权值。如果点对是有序的,那么图就是有向的。 图中的一条路径是一个顶点序列w1,w...

    2016-07-11 14:49
    3283
  • 算法系列(十二)散列

    Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是...

    2016-07-08 21:36
    2379
  • 算法系列(十一)BASE64算法实现和使用说明

    完整的BASE64定义可见RFC 1421和RFC 2045。编码后的数据比原始数据略长,为原来的 43。在电子邮件中,根据RFC 822规定,每76个字符,还需要加上一个回车换行。可以估算编码后...

    2016-07-01 10:28
    3960
  • 算法系列(十)堆实现优先队列

    堆实际上是一棵完全二叉树,其任何一非叶节点满足性质: Key[i]<=key[2i+1]&&Key[i]=Key[2i+1]&&key>=key[2i+2] 即任何一非叶节点的关键字不大于或者不小于其...

    2016-06-22 15:16
    2467
  • CPU概念和调度算法

    1、物理CPU、逻辑CPU、CPU核数 (1) 一个物理CPU上有多个CPU核,如果采用了intel的超线程技术(HT), 就会再多出一倍的cpu核出来 (2)一般情况下,逻辑cpu数=物理CPU*c...

    2016-06-12 09:18
    2934
  • 算法系列(九)平衡二叉查找树AVL树

    在AVL树中任何节点的两个子树的高度最大差别为一,所以它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下都是O(log n)。增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。一棵AVL树...

    2016-06-10 18:27
    2187
  • 算法系列(八)数据结构之二叉查找树

    在算法系列(七)数据结构之树的基本结构和二叉树的遍历 中介绍了基本的树结构,二叉树的实现和遍历。 这篇文章重点学习一下二叉查找树。 概述 二叉排序树(Binary Sort Tree)又称二叉查...

    2016-06-09 01:03
    2912
  • 算法系列(七)数据结构之树的基本结构和二叉树的遍历

    一、概述 在算法系列(六)数据结构之表队列和栈 一文中介绍了数据结构中的基本线性数据结构。对于大量的数据,链表访问时间太慢,而数组插入删除时间太慢。我们讨论一下数据结构树。 树结构大部分操作平均运行时...

    2016-06-06 22:55
    2843
  • 算法系列(六)数据结构之表队列和栈

    在http://blog.csdn.net/robertcpp/article/details/51559333一文中,我们讲了排序,这一章来介绍一下基本数据结构:表、队列、栈和它们的简单实现 一、表...

    2016-06-04 07:50
    2668
  • 算法系列(五)排序算法下篇--如何超越排序算法下界

    概述 在算法系列(四)排序算法中篇--归并排序和快速排序一文中,我们介绍了归并排序和快速排序,最坏的情况下,最快的排序算法的时间复杂度是O(nlogn),是否有更好的算法呢?到目前为止,没有特殊的规则...

    2016-06-01 23:57
    4132
  • 算法系列(一)基本概念

    一、什么是算法 算法是完成一个任务所需的一系列步骤,计算机解决计算机问题,我们希望从一个计算机算法中获得两个结果,给定一个输入,它应该总能够产生该问题的正确输出结果,并且在运行该算法时,能够有效的利...

    2016-05-29 10:17
    1697
  • 算法系列(四)排序算法中篇--归并排序和快速排序

    在算法系列(三)排序算法上篇 一文中,介绍了冒泡排序,插入排序和选择排序算法。这篇文章继续讲解排序算法。 概述 冒泡排序,插入排序和选择排序算法这些算法的时间复杂度都是O(N^2),是否有更高效的排序...

    2016-05-30 23:04
    2557
  • 算法系列(三)排序算法上篇--冒泡排序插入排序和选择排序

    排序算法概述 排序算法比较多,分两个篇幅来讲。由易道难。 先总体看一下都有哪些排序算法 冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序,计数排序,基数排序,希尔排序,桶排序。 排序算法分类 ...

    2016-05-29 22:34
    1032
  • 签名工具的使用

    下面是OPENSSL生成密钥对示例:  一,使用RSA算法:    生成私钥:openssl genrsa -out privatekey.key 1024    对应公钥:openssl rsa -...

    2015-01-08 13:27
    2322
  • 算法系列(二)查找算法--基本查找和二分查找

    从n个元素中A0,A1....An-1中,找到要找到的元素x,最简单的方法是遍历n个元素,找到元素x则返回x的位置,这种算法的时间复杂度为O(n)。 如果这n个元素是有序的,我们不需要从头到尾遍历一遍...

    2016-05-29 16:58
    4221
  • 模式匹配

    #include #include #include using namespace std;     char a[1000]="abcabaabcacabaabcdefg";  //原串 ...

    2011-11-05 19:56
    635

img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部