随笔分类 - 数据结构
摘要:第七章:查找 7.1折半查找 折半查找又叫二分查找,首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到
阅读全文
摘要:第六章:排序 归纳起来,常见的排序算法分为如下5类: 1)插入排序:普通插入排序,shell排序等; 2)选择排序:普通选择排序,堆排序; 3)交换排序:冒泡法,快速排序; 4)归并排序; 5)基数排序。 下面,就来实现各个排序算法。要掌握这些算法,大家首先要理解各个算法的具体执行原理和过程,然后应
阅读全文
摘要:章:树 5.1树的定义 首先,与前面的数据结构不同,树是一种重要的非线性数据结构。树是由一个或多个结点组成的有限集合,其中: 必有一个特定的称为根(ROOT)的结点; 剩下的结点被分成n>=0个互不相交的集合T1、T2、......Tn,而且, 这些集合的每一个又都是树。树T1、T2、......T
阅读全文
摘要:恢复内容开始 第四章:栈 4.1栈的定义:后进先出 栈是允许在同一端进行插入和删除操作的数据结构。被允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。插入一般称为进栈(PUSH),删除则称为出栈(POP)。 由于栈规定只能
阅读全文
摘要:第三章 队列 3.1队列定义:先进先出 队列是一种只允许前端(front,队首)进行删除操作,而在后端(rear,队尾)进行插入操作的数据结构。正是因为规定了从队首删除队尾插入的性质,因此最先插入的元素将是最先被删除的元素;反之最后插入的元素将是最后被删除的元素,因此队列又称为“先进先出”(FIFO
阅读全文
摘要:第二章 链表 链表通常由一连串节点组成,每个节点包含任意的实例数据(data fields)和一个用来指向下一个节点地址的指针(next指针)。 使用链表结构可以克服数组需要预先知道数据大小的缺点,链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。但是链表失去了数组随机读取的优点,同时链表
阅读全文
摘要:第一章 算法复杂度 1.1什么叫数据结构和算法 数据结构(data structure)是用来存放和管理(比如插入,删除,查找,更新,遍历等)各种数据的一种程序结构,常见的数据结构有数组,链表,队列,栈,树,HASH表,图等。 算法(algorithm)是指解决一个问题的方法及其实现。算法可以理解为
阅读全文

浙公网安备 33010602011771号