纯数据结构Java实现(0/11)(开篇)
为嘛要写
本来按照我的风格,其实很不喜欢去写这些细节的东西,因为笔记上直接带过了。
本来按照我的风格,如果要写,那也是直接上来就干,根本不解释这些大纲,参考依据。
本来按照我的风格,不想太显山露水,但要看了看互联网头部班子(大佬们),发现还是要推销和展示一下自我的。(但愿后面不会太过火)
本来。。。。够了。琐碎。
(补一句: 个人input, output都喜欢关注重点,默认认为都有基础,否则就太啰嗦了)
要点有二
其一: 本系列的所有内容,都是有理可循,有据可循的(不是我闭门造车、胡写一通)
具体参考如下:
- (比较出名的一本用Java实现的算法书,其实也有探讨数据结构) (99¥)
- 原书第三版 (69¥)
- 邓俊辉 (49¥)
- 慕课网 liuyubobobo (299¥)
当然如果您有时间和兴趣,可以直接去看我上面列出的资料。
BTW: 个人所写是上面资料的子集,所学基本不超出其范围; ¥代表 Chinese Yuan。
其二: 这里是纯粹的数据结构(包括常见的高级数据结构),不涉及算法
从刷题和面试的角度来看,纯粹的数据结构实现,收益不高,但是如果你以 专业
,专家
的标准要求自己时,这些都是非常必要的。
- 这里说的专家是一流企业认可的,业界认可的(不是自吹或单位内部奉承的)。
收益不高: 比如要你在巨大量的URL中找出某个特定的URL,此时更多的是运用数据结构而非实现它
计划大纲
0 - 11 总共 12 篇 (一打) --- 如果后续没有补充的话
- 大纲及说明 (本篇)
- 动态数组(向量)
- 栈与队列
- 链表
- BST
- Set&Map
- 堆&优先队列
- Segment Tree(线段树)
- Trie(字典树、前缀树)
- 2-3树&红黑树
- 散列(Hash)
如果额外还有补充的话,那么一律称为 (补)
,例如 (补1)(后缀树)
,(补2)(并查集)
等。
高抽象、高层数据结构只定义了操作接口,底层可能有好几种实现,个人尽量补齐。
哦,不用加微信(commoncommonheart
),不用关注微信号,我就在这里。(经常混 博客园/cnblogs)
纯数据结构Java实现(0/11)(开篇)的更多相关文章
- 纯数据结构Java实现(5/11)(Set&Map)
纯数据结构Java实现(5/11)(Set&Map) Set 和 Map 都是抽象或者高级数据结构,至于底层是采用树还是散列则根据需要而定. 可以细想一下 TreeMap/HashMap, T ...
- 纯数据结构Java实现(3/11)(链表)
题外话: 篇幅停了一下,特意去看看其他人写的类似的内容:然后发现类似博主喜欢画图,喜欢讲解原理. (于是我就在想了,理解数据结构的确需要画图,但我的文章写给懂得人看,只配少量图即可,省事儿) 下面正题 ...
- 纯数据结构Java实现(1/11)(动态数组)
我怕说这部分内容太简单后,突然蹦出来一个大佬把我虐到哭,还是悠着点,踏实写 大致内容有: 增删改查,泛型支持,扩容支持,复杂度分析.(铺垫: Java语言中的数组) 基础铺垫 其实没啥好介绍的,顺序存 ...
- 纯数据结构Java实现(2/11)(栈与队列)
栈和队列的应用非常多,但是起实现嘛,其实很少人关心. 但问题是,虽然苹果一直宣传什么最小年龄的编程者,它试图把编程大众化,弱智化,但真正的复杂问题,需要抽丝剥茧的时候,还是要 PRO 人士出场,所以知 ...
- 纯数据结构Java实现(6/11)(二叉堆&优先队列)
堆其实也是树结构(或者说基于树结构),一般可以用堆实现优先队列. 二叉堆 堆可以用于实现其他高层数据结构,比如优先队列 而要实现一个堆,可以借助二叉树,其实现称为: 二叉堆 (使用二叉树表示的堆). ...
- 纯数据结构Java实现(4/11)(BST)
个人感觉,BST(二叉查找树)应该是众多常见树的爸爸,而不是弟弟,尽管相比较而言,它比较简单. 二叉树基础 理论定义,代码定义,满,完全等定义 不同于线性结构,树结构用于存储的话,通常操作效率更高.就 ...
- 纯数据结构Java实现(10/11)(2-3树&红黑树)
欢迎访问我的自建博客: CH-YK Blog.
- 纯数据结构Java实现(9/11)(AVL)
欢迎访问我的自建博客: CH-YK Blog.
- 纯数据结构Java实现(8/11)(Trie)
欢迎访问我的自建博客: CH-YK Blog.
随机推荐
- 20140115-SqlHelper为什么是静态的
为什么SqlHelper(或工具类)是静态的? 静态构造函数仅调用一次(即只是在程序生命周期中实例一次),在程序驻留的应用程序域的生存期内,静态类一直保留在内存中 这样可以减少每次使用的实例过程,就是 ...
- I/O:FileLock
FileLock: /* 文件锁定要么是独占的,要么是共享的.共享锁定可阻止其他并发运行的程序获取重叠的 独占锁定,但是允许该程序获取重叠的共享锁定.独占锁定则阻止其他程序获取任一类型的重叠锁 定.一 ...
- python爬虫笔记之re.compile.findall()
re.compile.findall原理是理解了,但输出不大理解(主要是加了正则表达式的括号分组) 一开始不懂括号的分组及捕捉,看了网上这个例子(如下),然而好像还是说不清楚这个括号的规律(还是说我没 ...
- Java零基础个人学习路线总结
之前学习Java的时候走过一些弯路,一直想写一篇文章来总结下自己对自学Java的认识.趁着这次开通专栏的机会整理一篇文章,既可以巩固所学,也可以为后来境遇相同的人做个参考. 首先提出几个问题 Java ...
- UVA1103 古代象形符号 Ancient Messages 题解
题目链接: https://www.luogu.org/problemnew/show/UVA1103 题目分析: 我们可以先进行矩阵的还原 for(int k=1;k<=4;k++) { a[ ...
- 前端html+css+JavaScript 需要掌握的单词
前端html+css+JavaScript 需要掌握的单词 broswer 浏览器(客户端) html 超文本标记语言 css 层叠样式表 javascript 语言名字(类似python/php ...
- [leetcode] 80. Remove Duplicates from Sorted Array II (Medium)
排序数组去重题,保留重复两个次数以内的元素,不申请新的空间. 解法一: 因为已经排好序,所以出现重复的话只能是连续着,所以利用个变量存储出现次数,借此判断. Runtime: 20 ms, faste ...
- C# ORM简单原理
对象/关系数据库映射(object/relational mapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去. 在今日的企业环境中,把面向对象 ...
- Python秒算24点,行还是不行?
周末闲来无事,看到隔壁家的老王在和隔壁家的媳妇玩24点,就进屋看了看.发现老王是真不行啊,那不行,这也不行. 就连个24点都玩不过他媳妇,给他媳妇气的,啥都不能满足,这不能,那也不能. 我坐下来和他媳 ...
- 【JDK】JDK源码分析-LinkedHashMap
概述 前文「JDK源码分析-HashMap(1)」分析了 HashMap 主要方法的实现原理(其他问题以后分析),本文分析下 LinkedHashMap. 先看一下 LinkedHashMap 的类继 ...