为嘛要写

本来按照我的风格,其实很不喜欢去写这些细节的东西,因为笔记上直接带过了。

本来按照我的风格,如果要写,那也是直接上来就干,根本不解释这些大纲,参考依据。

本来按照我的风格,不想太显山露水,但要看了看互联网头部班子(大佬们),发现还是要推销和展示一下自我的。(但愿后面不会太过火)

本来。。。。够了。琐碎。

(补一句: 个人input, output都喜欢关注重点,默认认为都有基础,否则就太啰嗦了)


要点有二

其一: 本系列的所有内容,都是有理可循,有据可循的(不是我闭门造车、胡写一通)

具体参考如下:

  • (比较出名的一本用Java实现的算法书,其实也有探讨数据结构) (99¥)
  • 原书第三版 (69¥)
  • 邓俊辉 (49¥)
  • 慕课网 liuyubobobo (299¥)

当然如果您有时间和兴趣,可以直接去看我上面列出的资料

BTW: 个人所写是上面资料的子集,所学基本不超出其范围; ¥代表 Chinese Yuan。

其二: 这里是纯粹的数据结构(包括常见的高级数据结构),不涉及算法

从刷题和面试的角度来看,纯粹的数据结构实现,收益不高,但是如果你以 专业专家 的标准要求自己时,这些都是非常必要的。

  • 这里说的专家是一流企业认可的,业界认可的(不是自吹或单位内部奉承的)。

收益不高: 比如要你在巨大量的URL中找出某个特定的URL,此时更多的是运用数据结构而非实现它

计划大纲

0 - 11 总共 12 篇 (一打) --- 如果后续没有补充的话

  1. 大纲及说明 (本篇)
  2. 动态数组(向量)
  3. 栈与队列
  4. 链表
  5. BST
  6. Set&Map
  7. 堆&优先队列
  8. Segment Tree(线段树)
  9. Trie(字典树、前缀树)
  10. 2-3树&红黑树
  11. 散列(Hash)

如果额外还有补充的话,那么一律称为 (补),例如 (补1)(后缀树)(补2)(并查集)等。

高抽象、高层数据结构只定义了操作接口,底层可能有好几种实现,个人尽量补齐。


哦,不用加微信(commoncommonheart),不用关注微信号,我就在这里。(经常混 博客园/cnblogs)

纯数据结构Java实现(0/11)(开篇)的更多相关文章

  1. 纯数据结构Java实现(5/11)(Set&Map)

    纯数据结构Java实现(5/11)(Set&Map) Set 和 Map 都是抽象或者高级数据结构,至于底层是采用树还是散列则根据需要而定. 可以细想一下 TreeMap/HashMap, T ...

  2. 纯数据结构Java实现(3/11)(链表)

    题外话: 篇幅停了一下,特意去看看其他人写的类似的内容:然后发现类似博主喜欢画图,喜欢讲解原理. (于是我就在想了,理解数据结构的确需要画图,但我的文章写给懂得人看,只配少量图即可,省事儿) 下面正题 ...

  3. 纯数据结构Java实现(1/11)(动态数组)

    我怕说这部分内容太简单后,突然蹦出来一个大佬把我虐到哭,还是悠着点,踏实写 大致内容有: 增删改查,泛型支持,扩容支持,复杂度分析.(铺垫: Java语言中的数组) 基础铺垫 其实没啥好介绍的,顺序存 ...

  4. 纯数据结构Java实现(2/11)(栈与队列)

    栈和队列的应用非常多,但是起实现嘛,其实很少人关心. 但问题是,虽然苹果一直宣传什么最小年龄的编程者,它试图把编程大众化,弱智化,但真正的复杂问题,需要抽丝剥茧的时候,还是要 PRO 人士出场,所以知 ...

  5. 纯数据结构Java实现(6/11)(二叉堆&优先队列)

    堆其实也是树结构(或者说基于树结构),一般可以用堆实现优先队列. 二叉堆 堆可以用于实现其他高层数据结构,比如优先队列 而要实现一个堆,可以借助二叉树,其实现称为: 二叉堆 (使用二叉树表示的堆). ...

  6. 纯数据结构Java实现(4/11)(BST)

    个人感觉,BST(二叉查找树)应该是众多常见树的爸爸,而不是弟弟,尽管相比较而言,它比较简单. 二叉树基础 理论定义,代码定义,满,完全等定义 不同于线性结构,树结构用于存储的话,通常操作效率更高.就 ...

  7. 纯数据结构Java实现(10/11)(2-3树&红黑树)

    欢迎访问我的自建博客: CH-YK Blog.

  8. 纯数据结构Java实现(9/11)(AVL)

    欢迎访问我的自建博客: CH-YK Blog.

  9. 纯数据结构Java实现(8/11)(Trie)

    欢迎访问我的自建博客: CH-YK Blog.

随机推荐

  1. 消息中间件及IBM MQ

    MQ 消息中间件: 中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源. 中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯.是连接两个独立应用程 ...

  2. [USACO07FEB]银牛派对Silver Cow Party

    题目简叙: 寒假到了,N头牛都要去参加一场在编号为X(1≤X≤N)的牛的农场举行的派对(1≤N≤1000),农场之间有M(1≤M≤100000)条有向路,每条路长Ti(1≤Ti≤100). 每头牛参加 ...

  3. spark 源码分析之十七 -- Spark磁盘存储剖析

    上篇文章 spark 源码分析之十六 -- Spark内存存储剖析 主要剖析了Spark 的内存存储.本篇文章主要剖析磁盘存储. 总述 磁盘存储相对比较简单,相关的类关系图如下: 我们先从依赖类 Di ...

  4. 如何在一个项目中兼容Wepy和Taro?

    背景交待 NJ 项目启动初期,团队技术栈主要是基于 Vue,技术选择上就选择了类 Vue 的 wepy.迭代几个版本后 mpvue 出来了,简单调研了下,准备基于 mpvue-simple 开发部分页 ...

  5. 个人永久性免费-Excel催化剂功能第72波-序列规则下的数据验证有效性好帮手:快速录入窗体辅助录入

    Excel作为最好用的数据录入工具,没有之一,如果能够充分利用好Excel的灵活性和规范性,将带来极大的生产力提升,前面的几波功能也有做了几大数据录入的辅助功能,今天再次给大家带来一个特定的使用场景, ...

  6. 个人永久性免费-Excel催化剂功能第17波-批量文件改名、下载、文件夹创建等

    前几天某个网友向我提出催化剂的图片功能是否可以增加导出图片功能,这个功能我一直想不明白为何有必要,图片直接在电脑里设个文件夹维护着不就可以了么?何苦还要把Excel上的图片又重新导出到文件夹中?这个让 ...

  7. Java多线程(七):ReentrantLock

    加锁和解锁 我们来看下ReentrantLock的基本用法 ThreadDomain35类 public class ThreadDomain35 { private Lock lock = new ...

  8. C#3.0新增功能07 查询表达式

    连载目录    [已更新最新开发文章,点击查看详细] 查询是什么及其作用是什么 查询是一组指令,描述要从给定数据源(或源)检索的数据以及返回的数据应具有的形状和组织. 查询与它生成的结果不同. 通常情 ...

  9. [NLP-ASR] 语音识别项目整理(一) 语音预处理

      简介 之前参与过114对话系统的项目,中间搁置很久,现在把之前做过的内容整理一下,一是为自己回顾,二是也希望分享自己看的内容,中间也遇到一些问题,如果您可以提一些建议将不胜感激. 114查询主要分 ...

  10. PHP正则匹配到2个字符串之间的内容,匹配HTML便签内容

    PHP正则匹配到2个字符串之间的内容 $preg= '/xue[\s\S]*?om/i'; preg_match_all($preg,"学并思网址xuebingsi.com",$r ...