GithubHelp home page GithubHelp logo

data-structure's Introduction

Data-Structure

  • 线性表

    • #### 顺序表

    • #### 链表

      • #### 可利用空间表

      • #### 基于可利用空间表的双向链表

      • #### 通过异或实现节点遍历

    • #### 规范化测试

  • 字典

    • #### 基于顺序表的无序字典

    • #### 基于顺序表的有序字典

    • #### 基于链表的字典

    • #### 测试

    • #### 顺序栈

    • #### 链表栈

    • #### 测试

  • 队列

    • #### 顺序队列

      • 判断是满队还是空队,采用存储n个元素,开辟n + 1个空间,通过(rear + 2) % maxSize == front来判断队满,初始时rear = 0, front = 1.
    • #### 链式队列

    • #### 可变长顺序队列

    • #### 测试

  • 二叉树

    • #### 叶子节点与内部节点的数据结构定义及实现分离

      • 外部函数访问树
      • 通过继承以方便扩展访问树节点方式(针对不同的节点子类,尤其是节点子类数目较多时,其优势很明显)
    • #### 二叉搜索树

      • #### 测试
    • #### 堆

      • #### 测试
    • #### Huffman编码树

      • #### 测试
    • #### 动态左子节点/右兄弟节点表示法

      包含指向子节点、右兄弟、父节点指针

    • #### 测试

    • #### 并查集(Union/Find)

      • #### 路径压缩

      • #### 测试

  • 内部排序

    • #### 插入排序

      • #### 测试
    • #### 冒泡排序

      • #### 测试
    • #### 选择排序

      • #### 测试
    • #### 希尔排序

      • #### 测试

        以增量为3的序列排序效果最好(1, 4, 13, 40, 121 .....)

    • #### 快速排序

      • ##### 子数组长度小于9时采用插入排序

      • #### 测试

    • #### 归并排序

      • #### 归并排序的优化法

        采用合并时逆序第二个数组,将两个数组互作哨兵

      • #### 测试

    • #### 堆排序

      • #### 测试

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.