当前位置: 首页 > 数据结构&&算法
  • 内核sort.c 分析

    内核sort.c 分析

    最近,有人面试被问到sort了,总结文档一小篇。 内核数据结构与算法 –sort.c sort.c 的定义位置: 内核/inclde/linux/sort.h sort 源码的位置: 内核/lib/sort.c 我们来看看sort.h 和 sort.c 的内容,sort 是以库的是形式存在,实现上使用内核倒入符号: sort.h 只进行了定义。 C #i ...

    阅读全文
  • ADT 二叉查找树

    ADT 二叉查找树

    二叉查找树(排序树): 定义:    二叉排序树或者是一棵空树,或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于或等于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值; (3)左、右子树也分别为二叉排序树; 一棵深度为k且有2k-1个结点的二叉 ...

    阅读全文
  • 动态规划初学(一) 矩阵连乘与一个最长单调递增串

    动态规划初学(一) 矩阵连乘与一个最长单调递增串

    算法很重要!!! 问题一: 矩阵连乘,相信大家可能熟悉些,不知道的同学请百度。我在这里也装着分析一下。其实挺有意思的。 问题简述: 例如有A1 ,A2, A3, A4, A5,A6 总共6个矩阵,这6个矩阵的乘法顺序不同,则所作的乘法次数总共是不一样的,原因不解释。 解法一: 全排列:搜索出所有的可能组合然后计算出所有答 ...

    阅读全文
    作者:root | 分类:算法,我的最爱
  • 数据结构小结(九)排序算法大杂烩

    数据结构小结(九)排序算法大杂烩

    冒泡排序 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端 ...

    阅读全文
    作者:root | 分类:数据结构&&算法
  • 数据结构小结(八)图的使用

    数据结构小结(八)图的使用

    最小生成树 prim 算法 普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法 搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点,且其所有边的权值之和亦为最小。 该算法于1930年由捷克数学家沃伊捷赫·亚尔尼克发现;并在1957年由美国 ...

    阅读全文
    作者:root | 分类:数据结构&&算法
  • 数据结构小结(七)查找

    数据结构小结(七)查找

    几种查找算法 1.顺序查找 2.折半查找 3.分块查找 4.基于树的查找 平均查找长度 为确定某元素在查找表中的位置需要和给定值进行比较的关键字个数的期望值,称为该查找算法查找成功时的平均查找长度。 基于线性表的查找 很简单,时间复杂度为O(N)。 这里只说那个改进的线性表查找好了。 ...

    阅读全文
    作者:root | 分类:数据结构&&算法
  • 数据结构小结(六)树

    数据结构小结(六)树

    第六章 树 前言 经过两天的努力终于写到树了。前面的也总算基本说清了,到树这一章了,我打算不局限 于课本,多了解一些东西也是好的。 遂决定以下学习路线: 1.树的基本概念 2.二叉树 3.AVL树 4.B树 5.红黑树 6.树在文件系 ...

    阅读全文
    作者:root | 分类:数据结构&&算法