`
xitong
  • 浏览: 6209345 次
文章分类
社区版块
存档分类
最新评论

重新读数据结构 - 心得

 
阅读更多

数据结构的特性



链表:

1. 链表有 双端、双向、有序链表

2. 优点:动态分配空间、插入、删除快 , 花费时间O(n),最近一个点的花费时间O(1).

缺点:查询慢

3. 总结:

多用于存储 ,查找用树构建索引


递归-归并排序

1. 简易排序的执行效率 都为 O(n~2)

2. 归并排序 - 核心思路 : 就是将一个数组 不停的 划分两个数组,然后合并为有序数组, 效率为 O(n*logN), 速度比简易排序快很多,但有缺点,需要暂用两份内存。

3. 消除递归的方法,就是通过栈的实现来解决


快速排序

1.为通用排序最好的算法, 快速排序的效率也为O(n*logN),并且不需要占用两倍的空间


1.查找算法的效率为 O(logN) 实际为Log2~N

2.删除树子节点,就是通过 中序的后继结点补上


红黑树

1. 由于有序的情况底下,树出现极限的情况,导致效率降低为 O(N)

2.红黑规则

2.1 每一个节点不是红色就是黑色

2.2 根节点一定是黑色

2.3 如果节点是红色,则子节点一定是黑色

2.4 从根到任一子节点或空节点的每条路径,必须包含相同数目的黑节点。(即树的高度是必须一致的)

3. 违规修正

3.1 修改节点的颜色(即插入的节点如果是黑色下跟着两个红色,则必须采取变颜色)

3.2 改变旋转操作

分享到:
评论

相关推荐

    读核感悟--内核阅读心得

    读内核源代码是一件很有意思的事。它像一条线,把操作系统,编译原理,C 语言, 数据结构与算法,计算机体系结构等等计算机的基础课程串起来。

    《程序设计与数据结构》

    为了将实际开发过程中总结的有价值的技术应用分享给大家,周立功及其团队整理出《程序设计与数据结构》这本书,其内容如同培训讲师的教案,是周立功和团队的读书笔记和程序设计实践的心得。

    大数据时代读书心得体会.docx

    在写心得体会前,我想再重新审视一下关于大数据的历史沿革和现实意义。 首先,最早提出"大数据"时代到来的是全球知名咨询公司麦肯锡,麦肯锡称:"数据,已经渗透到当今每一个行业和业务职能领域,大数据时代读书心得...

    学生成绩管理系统课程设计报告.doc

    (1)输入学生信息并保存到文件 (2)读取文件并输出学生信息 (3)按学号及学期查询 (4)按姓名及学期查询 (5)按学号及学期修改信息 (6)插入信息 (7)按学号及学期删除信息 (8)按数据结构降序(冒泡)排序 (9)按...

    得到某个数据库的详细数据表结构

    一次性生成某个数据库的详细的数据结构,生成的文件为html格式,且按表名排序好,方便程序人员查看。最主要是不需要每次有结构变动都要人工编辑相应的数据库结构文档,为程序开发人员提供一点偷懒的方法。 <br/>...

    内核阅读心得.pdf

    数据结构与算法,计算机体系结构等等计算机的基础课程串起来。 我看内核源代码是用lxr+glimpse(不一定要自己架,可以直接访问校内外的lxr网 站)的。如果在windows下也可以用source insight。以下的当前路径为内核...

    数据结构课设

    4.概要设计:给出每道题采用的数据结构,算法设计思想,算法的时间复杂度; 5.详细设计:给出每道题的源程序,并在必要的代码处给出注释; 6.功能测试:给出每道题的测试数据和结果; 7.完成情况:每道题完成部分和...

    大数据时代心得体会感想.docx

    大数据更像是理论与现实齐头并进,理论来创立处理非结构化数据的方法,处理结果与未来进行验证。4、分析基础。大数据是在互联网背景下数据从量变到质变的过程。笔者认为,小数据时代也即是信息时代,是大数据时代的...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    4.8.1 从控制台读取数据 94 4.8.2 结账程序中的循环 96 4.9 小结:Java不是一个直肠子 98 4.10 习题 99 第5章 数组 100 教学视频:35分钟 5.1 什么是数组 100 5.1.1 假设:如果需要逐个定义变量 100 5.1.2 ...

    超越对手--软件项目经理的18种实用技能

    2.13.2 接口数据一致性握手方式 29 2.14 调研后续工作落实阶段 30 2.14.1 如何写业务调研报告 30 2.14.2 业务调研报告完成后续工作 30 3. 如何写解决方案? 31 3.1 解决方案难写在哪里? 31 3.1.1 第一种是没有体系 ...

    Lotus学习技巧与心得帮助大家共同进步

    使用结构化数据 使用半结构数据元素(丰富文本,图片,等) 提供实时访问数据 使用复制来增加或减少文档(按修改) 使用特别的queiries定位数据 使用视图定位数据 集中在一个企业内部 在企业与企业间 使用SQL来访问 ...

    针式PinPKM-V201506(免费无使用限制)

    针式PKM以文档原本的格式分散保存,再加上多种备份方式, 确保数据的不丢失。 通过几天的适应,您就能掌握: 针式PKM是基于资源管理器之上所提供的更强大、更适合个人知识管理的功能。 3.3 第三步:掌握收集...

    Mapreduce实验报告.doc

    Master用到的数据结构 Struct Split[] //文件切割后的信息 struct MapSTATE[] //记录各个map任务的情况。 struct ReduceSTATE[R] //各个reduce任务的情况。 Type Map=0,Reduce=0 //记录map任务和reduce任务的完成...

    PinPKM-V201525(官网发布的最后一个免费无使用限制版本)

    文档大师,原名针式PKM是一款专业的个人文档管理软件,以个人知识管理理念... 针式PKM以文档原本的格式分散保存,再加上多种备份方式, 确保数据的不丢失。 通过几天的适应,您就能掌握: 针式PKM是基于资源管理器之...

    温度采集系统课程设计--8通道温度数据采集系统.doc

    整体结构框图如图1.5所示: 温度采集整体结构框图 系统工作流程图如图所示: 系统工作流程 2主要器件的介绍 2.1AT89C51 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器,俗称单片机。单片机的可擦除只 读存储器...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    4.8.1 从控制台读取数据 94 4.8.2 结账程序中的循环 96 4.9 小结:Java不是一个直肠子 98 4.10 习题 99 第5章 数组 100 教学视频:35分钟 5.1 什么是数组 100 5.1.1 假设:如果需要逐个定义变量 100 5.1.2 ...

    操作系统课程设计 天津科技大学 二级文件系统设计 答案 完整代码 Liunx

    使用文件来模拟外存,进行数据结构设计和操作算法的设计,实现一个文件系统并实现基本的文件操作(为了简便文件系统,不考虑文件共享,文件系统安全以及管道文件与设备文件等特殊内容)。要求: 1、 对程序的每一...

    asp.net知识库

    根据基本表结构及其数据生成 INSERT ... 的 SQL 简便的MS SQL 数据库 表内容 脚本 生成器 将表数据生成SQL脚本的存储过程 直接从SQL语句问题贴子数据建表并生成建表语句的存储过程 从SQL中的一个表中导出HTML文件...

    java笔试题算法-wiki:Github上JavaScript、CSS和Nodejs的精选列表

    java笔试题算法 , , , , . 如果你发现自己陷入各种新技术、工具包围中,而纠结于该选择...数据结构与算法/leetcode/lintcode题解 - 借助开源项目,学习软件开发 - 前端工作面试问题 - 前端工作面试题解答 - 深入Java

    单片机课程设计-IIC总线式EEPROM存储器应用设计.doc

    6 5.1.2 页写入操作 6 5.2 确认查询 7 5.3 读操作 7 5.3.1 当前地址的读操作 8 5.3.2 随机读操作 8 5.3.3 连续读操作 9 6 具体设计过程 10 6.1 程序流程设计 10 6.2执行结果 13 6.3 系统组成模块结构及功能 ...

Global site tag (gtag.js) - Google Analytics